/data-structures-kitchen

Implementations of several data structures used in computing, such as Binary Search Tree, AVL Tree, etc.

Primary LanguageJavaGNU General Public License v3.0GPL-3.0

Data Structures Kitchen

Data Structures is a crucial topics for computer science and engineering. It is the first step of problem solving and high perforamance computing.

In this project, I present generic implementations of several important data stuructures in JAVA.

Implementations does not only include the bare coding of the required algorithms but also nice class hierarchies, test classes and several interesting methods, including printing, toString, range finding, etc.

Implemented Data Stuructre

  • Graphs

    • Types: Weighted, Unweighted, directed, undirected
    • Algorithms:
      • DFS
      • BFS
      • Cycle detection
      • Topological sort
      • Traversals: pre order, mid order, post order, level order
  • Trees

    • Binary Search Tree
    • AVL Tree

    • Coming soon..
    • Red Black Tree
    • B-Tree
  • Heaps

    • Binary Min Heap
    • Binary Max Heap
  • Lists

    • Linked List

      • Singly Linked List
      • Doubly Linked List
      • Circular Linked List
      • Binary Max Heap
    • Queue
    • Stack