Algorithms Visualiser

Built with PyQt5 and PyGame
Get a clear understanding of the mentioned Algorithms by a Simple Clone and Run
Learning by Visualising is Fun
Made with by Jay

Made for Visualising

Merge Sort

Merge sort is a sorting technique based on divide and conquer technique. With worst-case time complexity being Ο(n log n), it is one of the most respected algorithms.Merge sort first divides the array into equal halves and then combines them in a sorted manner.

Insertion Sort

In an insertion sort, the first element in the array is considered as sorted, even if it is an unsorted array. In an insertion sort, each element in the array is checked with the previous elements, resulting in a growing sorted output list. With each iteration, the sorting algorithm removes one element at a time and finds the appropriate location within the sorted array and inserts it there. The iteration continues until the whole list is sorted.

Bubble Sort

Bubble sort is a sorting algorithm that works by repeatedly stepping through lists that need to be sorted, comparing each pair of adjacent items and swapping them if they are in the wrong order. This passing procedure is repeated until no swaps are required, indicating that the list is sorted. Bubble sort gets its name because smaller elements bubble toward the top of the list.Bubble sort is also referred to as sinking sort or comparison sort.

Quick Sort

Quicksort is a divide-and-conquer algorithm. It works by selecting a 'pivot' element from the array and partitioning the other elements into two sub-arrays, according to whether they are less than or greater than the pivot. The sub-arrays are then sorted recursively.

A* Path Finding

A* pronounced as A star is a computer algorithm that is widely used in pathfinding and graph traversal. The algorithm efficiently plots a walkable path between multiple nodes, or points, on the graph.On a map with many obstacles, pathfinding from points AA to BB can be difficult. A robot, for instance, without getting much other direction, will continue until it encounters an obstacle, as in the path-finding example to the left below.However, the A* algorithm introduces a heuristic into a regular graph-searching algorithm, essentially planning ahead at each step so a more optimal decision is made.

Pre-Implentation Designs and Results

These are my ideas for UX and UI and the resultant outputs you get after selecting the algorithm from the main Menu

A* path-finding

Insertionsort

Mergesort

Quicksort

Bubblesort

Main Menu

BackGround work

Pre-Implementation Designs and Algorithms

About me

I am Jay,Project development entusiast.Love to learn and develop new Ideas through programming

mail: namgirijayvinay@gmail.com

connect with me through

LindkedIn

About PyQt

PyQt is a set of Python bindings for The Qt Company's Qt application framework and runs on all platforms supported by Qt including Windows, macOS, Linux, iOS and Android.

PyQt is a blend of Python programming language and the Qt library.


For developers who are interested in building these kinds of applications in Python, there are a wide variety of libraries to choose from, including PyGame,Tkinter, wxPython, PyQt, PySide2 and Others