Skip to content

Hugo-RM/dsa-visualizer

Repository files navigation

DSA Algorithm Visualizer

A web-based interactive tool for visualizing data structures and algorithms, built to help students understand sorting algorithms through real-time animations. It will likely be unimpressive at first but I plan to learn and develop skills that will change that. I will prioritize front-end at first then expand from there.

Project Overview

This project will provide a step-by-step visual representations of popular sorting algorithms, allowing users to see exactly how each algorithm processes data. Perfect for computer science students, tutors, and anyone learning algorithmic concepts.

Technologies Used

  • React - Frontend framework for component-based UI
  • JavaScript - Core programming language with modern syntax
  • Tailwind CSS - CSS framework for styling
  • Vite - Modern build tool and development server
  • HTML5 & CSS3 - Web standards for structure and styling

Planned Features

  • Data Structures:

    • Arrays (in progress)
      • Array Based Stack
        • Monotonic Stack
      • Array Based Queue
        • Circular Queue
    • Linked Lists
      • Linked List Based Stack
      • Linked List Based Queue
    • Deque
      • Python and C++ implementation (super cool)
    • Binary Trees
      • Binary Search Tree
      • AVL Tree
      • Red-Black Tree
    • Graphs
      • Adjacency List
      • Adjacency Matrix
  • Sorting Algorithms:

    • Bubble Sort
    • Quick Sort (in progress)
    • Merge Sort (in progress)
    • Insertion Sort
    • Selection Sort
  • Search Algorithms:

    • Linear Search (in progress)
    • Binary Search
    • Jump Search (not sure yet)
    • Interpolation Search (not sure yet)
  • Enhanced Features:

    • Algorithm comparison mode
    • Performance statistics
    • Save/load custom arrays
    • Algorithm complexity analysis
    • Step-by-step code walkthrough

Project Goals

  • Educational: Help students visualize and understand algorithms
  • Interactive: Provide hands-on learning experience
  • Accessible: Clean, intuitive interface for all skill levels
  • Comprehensive: Cover major DSA topics taught in computer science courses
  • Mastery: Master DSA through programming a visualizer

Contributing

This personal project is mostly for me to learn and practice new things, suggestions and feedback are welcome!

About

Work In Progress. Hoping to make this my first major project :]

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published