Sorting Algorithm Visualization
Karki, Bikram (2021)
Karki, Bikram
2021
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2021111420202
https://urn.fi/URN:NBN:fi:amk-2021111420202
Tiivistelmä
Algorithm is an integral part of computers and programming. It provides consistency in solving similar tasks with a predictable and desirable outcome. Among algorithms, sorting algorithms are regarded as the gateway to the world of algorithms in programming. Evident by their definition, they are used to sorting data set with similar properties. There are various types of sorting algorithms with their distinct implementations and strategies. They are often not as easy to understand and absorb. A possible contributing factor can be the lack of visualization of the process and steps each one takes to accomplish the task of sorting. Thus, the objective of this thesis was to create a web application as a visualization tool for three common sorting algorithms namely Bubble sort, Merge sort, and Quick sort.
The result was a web application built using React and other modern JavaScript technologies. The application UI was able to visualize the sorting process using various colors or denote the status of the elements in the array. It includes features to select the size of the data (array of random numbers), visualization speed, sorting algorithm. Along with that, an extra feature for accessibility called color mode is also present for anyone with a medical condition that is affected by flashing colors.
The main objective of the thesis was met. However, the application can be improved further in terms of responsiveness and support mobile devices, design, and more options of sorting algorithms, etc.
The result was a web application built using React and other modern JavaScript technologies. The application UI was able to visualize the sorting process using various colors or denote the status of the elements in the array. It includes features to select the size of the data (array of random numbers), visualization speed, sorting algorithm. Along with that, an extra feature for accessibility called color mode is also present for anyone with a medical condition that is affected by flashing colors.
The main objective of the thesis was met. However, the application can be improved further in terms of responsiveness and support mobile devices, design, and more options of sorting algorithms, etc.