This project is a C# application that provides a visual representation of multiple sorting algorithms using the MVVM (Model-View-ViewModel) architectural pattern and WPF (Windows Presentation Foundation) for the user interface.
Sorting Algorithm Visualization is a project aimed at helping developers understand and visualize various sorting algorithms. It provides an interactive user interface that allows users to observe the step-by-step execution of different sorting algorithms on a set of randomly generated data.
Visualization of the following sorting algorithms:
Bubble Sort
Selection Sort
Insertion Sort
Merge Sort
Quick Sort
Cocktail Sort
Shell Sort
Bucket Sort
Radix Sort
Random data generation: Users can specify the number of elements and range for the data to be sorted.
The application animates the sorting process step by step, providing visual cues and highlighting the elements being compared and swapped.
The project is built using the following technologies:
C# programming language
MVVM architectural pattern
WPF (Windows Presentation Foundation) for the user interface
.NET Framework
To get started with this project, follow these steps:
Clone the repository:
git clone https://github.com/myk93/SortingAlgorithm.git
Open the solution file SortingAlgorithm.sln in Visual Studio.
Build the solution to restore the NuGet packages and compile the project.
Launch the application from Visual Studio or by running the compiled executable.
Specify the number of elements and the range for the data to be sorted.
Click the "shuffle" button then "sort" to begin the visualization.
Contributions to this project are welcome. If you want to contribute, please follow these steps:
Fork the repository.
Create a new branch for your feature or bug fix.
Make your changes and commit them with descriptive commit messages.
Push your changes to your forked repository.
Submit a pull request to the main branch of the original repository, describing your changes in detail.

