Project done during Full Stack Software Engineering studies at ALX Africa. It aims to learn about sorting algorithms (Bubble sort, Insertion sort, Selection sort, Quick sort and so on) and Big O Notation in C language.
- Scripts written in Bash / vi
- C files are compiled using
gcc 9.4.0
- Tested on Ubuntu 20.04
All of the following programs are written in C:
Filename | Description |
---|---|
0-bubble_sort.c |
Function that sorts an array of integers in ascending order using the Bubble sort algorithm |
0-O |
File that stores the best, average and worst case of the time complexity of the Bubble sort algorithm |
1-insertion_sort_list.c |
Function that sorts an array of integers in ascending order using the Insertion sort algorithm |
1-O |
File that stores the best, average and worst case of the time complexity of the Insertion sort algorithm |
2-selection_sort.c |
Function that sorts an array of integers in ascending order using the Selection sort algorithm |
2-O |
File that stores the best, average and worst case of the time complexity of the Selection sort algorithm |
3-quick_sort.c |
Function that sorts an array of integers in ascending order using the Quick sort algorithm |
3-O |
File that stores the best, average and worst case of the time complexity of the Quick sort algorithm |
100-shell_sort.c |
Function that sorts an array of integers in ascending order using the Shell sort algorithm |
100-O |
File that stores the best, average and worst case of the time complexity of the Shell sort algorithm |
101-cocktail_sort_list.c |
Function that sorts an array of integers in ascending order using the Cocktail shaker sort algorithm |
101-O |
File that stores the best, average and worst case of the time complexity of the Cocktail shaker sort algorithm |
102-counting_sort.c |
Function that sorts an array of integers in ascending order using the Counting sort algorithm |
102-O |
File that stores the best, average and worst case of the time complexity of the Counting sort algorithm |
103-merge_sort.c |
Function that sorts an array of integers in ascending order using the Merge sort algorithm |
103-O |
File that stores the best, average and worst case of the time complexity of the Merge sort algorithm |
104-heap_sort.c |
Function that sorts an array of integers in ascending order using the Heap sort algorithm |
104-O |
File that stores the best, average and worst case of the time complexity of the Heap sort algorithm |
105-radix_sort.c |
Function that sorts an array of integers in ascending order using the Radix sort algorithm |
105-O |
File that stores the best, average and worst case of the time complexity of the Radix sort algorithm |
106-bitonic_sort.c |
Function that sorts an array of integers in ascending order using the Bitonic sort algorithm |
106-O |
File that stores the best, average and worst case of the time complexity of the Bitonic sort algorithm |