Skip to content

KartikayKaul/Abstract-Data-Structures

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Abstract Data Structures

A personal library of Data Structures and Algorithms implemented from scratch in C++.
It may later be extended to Python or C for comparative learning.

I am actively working on this project to revisit and practice concepts from CLRS, Coursera, and other algorithmic resources.


Navigation

Section Description
Data Structures Core ADT implementations (stack, queue, trees, graph, etc.)
Miscellaneous Specialized or utility data structures (e.g., matrix)
Algorithms (Planned) Common algorithms like sorting, searching, and traversal
Updates Progress logs and change history
Contribute How to contribute or suggest improvements

Below is the navigation for different readme files distributed throughout the repository for detailed guidance or notes on corresponding titular folder name.

Readme Files
Graphs
Miscellaneous

Data Structures

All core data structures are organized under the ADT subfolder.

Category Description Link
Stack LIFO implementation with templated support View Folder
Queue FIFO structure and variations View Folder
Priority Queue Min/Max heap-like structure View pqueue.h
Trees Binary trees, BSTs, AVL trees, etc. View Folder
Graphs Undirected and Directed graphs View Folder

Each folder may contain its own README.md file with details, structure, and usage examples. Navigation for the readme files is provided above.


Miscellaneous

Some data structures serve specific or utility purposes.


Algorithms

This section will include algorithms implemented from CLRS, Coursera, and related resources.

Planned topics include:

  • Sorting and Searching
  • Graph Algorithms (UCS, A*, Dijkstra)
  • Dynamic Programming
  • Recursion and Divide & Conquer

Refer to the Algorithms folder once populated/created.


Updates

Timestamp Description
1402240328 Turned pqueue into a templated class for generality. Considering generalizing uGraph and diGraph next.
11212022 Implemented dequeue() in pqueue. Currently debugging element swapping logic.
11162022 Began implementing priority queue data structure for future graph search algorithms such as UCS and A*.

Contribute

I am expanding this repository as I continue revisiting data structure and algorithm concepts.
Contributions, suggestions, and improvements are always welcome.

  • Open issues to suggest new structures or algorithms.
  • Submit pull requests for code improvements or documentation updates.
  • Use the discussion section for guidance or collaboration.