Details for the Implemented Sorting Algorithms
Bubble Sort
General idea: go through all the values in a list several times, and for each iteration, “float” the biggest element to the top of the list
Average case time complexity: O(n^2)
In place: yes
Quick Sort
General idea: this is a devide and conquer algorithm. The algorithm picks a pivot element and then partitions then, partitions the given array around the picked element.
Average case time complexity: O(nLogn)
In place: yes
Selection Sort
General idea: repeatedly finds the minimum element in the unsorted array and puts it in the beginning of the array.
Average case time complexity: O(n^2)
In place: yes
Code
The source code for this project can be found here.