This repository supplements our mobile app "VisiGrab: Algorithms & DSA", which offers interactive visualizations of algorithms and data structures. It provides code for the concepts demonstrated in the app and is an essential resource for users seeking to understand and explore these implementations in detail. Learn more about the app: App Store, Google Play.
- Binary Trees — BST (Standard, AVL, Red-Black), In-order / Pre-order / Post-order / Breadth-first traversals
- Graphs — BFS/DFS traversal, Dijkstra, Bellman-Ford, Minimum Spanning Tree (Kruskal, Prim), Topological Sort. The app also features an interactive Graph Constructor — tap to add vertices, drag between them to add edges, and watch the algorithms run on your custom graph in real time.
- Linear Data Structures — Array, Linked List, Stack, Queue
- Sorting — Bubble, Insertion, Selection, Merge, Quick (Lomuto & Hoare), Heap Sort
- Hash Table
- Trie
- Union-Find
While this project is open-source, it is not currently seeking contributions. You are welcome to fork and use the code according to the license, but please note that contributions or pull requests to this repository will not be accepted.
Prerequisites
- A C++17-compliant compiler (e.g.
g++7 or later,clang++5 or later)
To clone the repository locally, run:
git clone https://github.com/Lord-of-Algorithms/DSA-in-Cpp.git
To run an example, navigate to the corresponding folder and compile it using g++:
cd DSA-in-Cpp/binarytree
g++ -std=c++17 -o out binary_search_tree_main.cpp
./out
This project is licensed under the MIT License. See the LICENSE file for more details.
If VisiGrab has helped your learning, a quick rating on the App Store or Google Play helps other learners discover it. Thanks!