Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Graph ADT and shortest path algorithms + Polynomials ADT and CRC algorithm

License

NotificationsYou must be signed in to change notification settings

miro-jelaska/ComputerNetworkAlgorithms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Graph ADT and shortest path algorithms + Polynomials ADT and CRC algorithm. Project that I created while taking course on Computer networks on faculty. I wanted to make an useful abstraction of graphs and polynomials so that algorithm implementations would be lightweight (e.g. I don't think that CRC algorithm should know how polynomial division is done. It should only ask for division and Polynomial ADT should take care of the rest.)

It can be devided into two parts:

  • Graphs and shortest path algorithms
  • Polynomials and CRC algorithm

NOTE: Do you like it? Show it by giving a ⭐️. 🚀

Graphs and shortest path algorithms

It comprises of following data structures:

🔎Data structureDescription
<>DistanceSimplestruct that represents tuple (vertex A, vertex B, edge weight)
<>EdgeMakes comparing edges and summing edge weights easier. It also makes having edges with infinit or no weight easier.
<>GraphRepresents graph that can be directed or undirected.
<>GraphBuilderClass inspired by StringBuilder provides handy way to build Graph (which are immutable).
<>GraphWithTrackingWraps around Graph and provides a lists to keep track of calculated distances between vertices and to keep track which vertices are visited.

Algorithm implementations:

🔎Algorithm
<>Dijkstra
<>BellmanFord

Polynomials and CRC algorithm

It comprises of following data structures:

🔎Data structureDescription
<>DecimalMonomialThis class represents one part of the Polynomial. This is not an mathematical but artificial structure which is essential building block of Polynomials. In this polynomial4x^3 + 2x - 1 monomials are [4x^3, 2x, -1].
<>DecimalPolynomialRepresents decimal polynomial internaly build out of DecimalMonomials. It makes addition, multiplication, comparison, ... among decimal polynomials easy.
<>BinaryPolynomialRepresents binary polynomial internaly using oneuint to hold polynomial. It makes addition, division, comparison, ... among binary polynomials easy.

Algorithm implementations:

🔎Algorithm
<>CrcAlgorithm

About

Graph ADT and shortest path algorithms + Polynomials ADT and CRC algorithm

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors2

  •  
  •  

Languages


[8]ページ先頭

©2009-2025 Movatter.jp