DataStructures in C

This repository contains my implementations of common datastructures in C language.

Introduction:

This repository will include all structures to be covered in my college and some extra structures which may not be in the syllabus.

Eventually, some algorithms that use these data structures such as DFS, BFS, Dijkstra's, Huffman Encoding, Topological sort etc. may also be added.

Structures:

The structures being implemented for this repository are:

  1. Linked List
    • Singly Linked List ✔
    • Doubly Linked List
    • Circular Linked List
    • Header Linked List
    • Circular Doubly Linked List
    • Self-organizing Linked List
  2. Stack ✔
    • Array Representation ✔
    • Linked Representation ✔
  3. Queue
    • Deque
    • Priority Queue (similar to heaps)
    • Circular Queue
  4. Trees
    • General Tree
    • Binary Tree
    • Binary Search Tree
    • Threaded Binary Tree
    • AVL Tree
    • Red-Black Tree
    • Huffman Tree
    • Splay Tree
    • B Tree
    • B+ Tree
    • 2-3 Tree
  5. Heaps
    • Min Heap
    • Max Heap
  6. Graphs
    • Adjacency List
    • Adjacency Matrix
  7. Hash Table
  8. Bloom Filters
  9. Union Find