This is a Data Structures and Algorithms project implemented in Kotlin Multiplatform. It's purpose is to provide visual animations along with code implementation highlighting so students can better understand how various data structures and algorithms work.
While the underlying code for the selected algorithm is running, the visualization will animate the process step-by-step, making it easier to grasp the concepts. During the animations, the relevant lines of code will be highlighted to show which part of the algorithm is currently being executed.
While the project is still in its early stages, and only contains Binary Search. There will be future implementations and visualizations for:
- Sorting Algorithms (Bubble Sort, Merge Sort, Quick Sort)
- Search Algorithms (Depth-First Search, Breadth-First Search)
- Basic Data Structures (Arrays, Linked Lists, Stacks, Queues)
Future plans include adding more advanced data structures (Trees, Graphs, Hash Tables) and algorithms (Dynamic Programming, Greedy Algorithms). Contributions and suggestions are welcome! Feel free to explore the codebase, and run the visualizations to see how these algorithms work step-by-step.
Any feedback or suggestions would be greatly appreciated as I continue to develop and expand this educational tool.
- Clone the repository
- Open the project in IDE that supports Kotlin Multiplatform (e.g., IntelliJ IDEA)
- Execute "./gradlew build" to build the project
- Execute "./gradlew run" to run the visualizer