/AlgorithmsAndDataStructures

Assignments for Algorithms and Data Structers

Primary LanguageC

Algorithms And Data Structures - Graph Theory

Assignments for Algorithms and Data Structures and Graph Theory Lessons

Dokuz Eylül University Computer Science 2nd Grade


What this repository includes: Algorithms And Data Structures

Data Structures:

  • Array: Integer
  • Linked List: Integer and ID
  • Stack: Integer - Array - Stack and Heap Memory
  • Queue (Circular): Integer - Array - Stack and Heap Memory
  • Binary Search Tree: Integer - Array
  • Heap: Integer - Array
  • Tests for all data structures above

Algorithms:

  • Havel-Hakimi
  • Tests for all algorithms above

Naming Convention:

Variables and Structs: structName, variableName

  • Example: Node_Int currentNode -> Node that we currently hold to do things
  • Example: int arraySize -> Size of the array

Data Structures and Files: StructureName_StructureType1StructureType2

  • Example: LinkedList_IntID -> Linked List, has integer value and id
  • Example: Stack_Int -> Stack, has integer value

Data Structure Functions: MethodNameStructureName_StructureType1StructureType2

  • Example: InsertBeforeByIDIntoList_IntID -> Inserts a node into the list before the node with given id. List has integer value and id
  • Example: PopStack_Int -> Pops the stack that has integer

Algorithms and Files: AlgorithmName_TypeStructure

  • Example: HavelHakimi -> Has no type or structure option
  • Example: SelectionSort_IntArray -> Sorts integer array using selection sort algorithm

Todo:

  • Linked List:

  • Integer, Char, Float

  • Header Linked List

  • Circular and Double Linked Lists

  • Stack:

  • Float and Char

  • Linked List

  • Dynamically Growing Array

  • Queue (Circular):

  • Float and Char

  • Linked List

  • Dynamically Growing Array

  • Binary Search Tree and Heap:

  • Common Tree

  • Graph Theory Algorithms:

  • Vertex Coloring

  • Paul-Unger

  • Dijkstra

  • Floyd-Warshall

  • Kruskal

  • Prim