A study of the effects of different contextual variables on sorting algorithms

Background: Computers use sorting algorithms to prepare data for search or insert operations, these operations can be a bottleneck for performance. Objectives: To evaluate sorting algorithms performances when existing in different implementation environments like different languages, sorting in diff...

Full description

Bibliographic Details
Main Author: Björk, Casper
Format: Others
Language:English
Published: Blekinge Tekniska Högskola, Institutionen för programvaruteknik 2020
Subjects:
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:bth-20528
Description
Summary:Background: Computers use sorting algorithms to prepare data for search or insert operations, these operations can be a bottleneck for performance. Objectives: To evaluate sorting algorithms performances when existing in different implementation environments like different languages, sorting in different data types and in different sizes. Methods: By performing an experiment with Java, C++, Python and Javascript on three different sizes and three different data types performance of sorting algorithms will be evaluated. The sorting algorithms used in this study are Insertion sort, Selection sort, Quick sort and Merge sort. They were all tested on each size on each language three times. Results: In the end 432 tests were performed and the results found that Java had best execution time on all four algorithms with quick sort as the best algorithm. The best data type could not be pinpointed down since they acted differently on different algorithms. Quicksort was determined to be the fastest algorithm in the literature review which focused fastest algorithm Conclusions: Together with the results of the experiment and literature review quicksort is the fastest sorting algorithm. The best performing implementation language was Java. For data types one type could not be determined the best only the worse could be decided, floats performed the worse of all three types.