diff options
Diffstat (limited to 'src')
75 files changed, 233 insertions, 0 deletions
diff --git a/src/LICENSE.txt b/src/LICENSE.txt new file mode 120000 index 0000000..4ab4373 --- /dev/null +++ b/src/LICENSE.txt @@ -0,0 +1 @@ +../LICENSE.txt
\ No newline at end of file diff --git a/src/assets/css/plots.css b/src/assets/css/plots.css new file mode 100644 index 0000000..b6880c6 --- /dev/null +++ b/src/assets/css/plots.css @@ -0,0 +1,4 @@ +/* I don't like the unnecessary white space below <img>s in thumbnails. */ +a.thumbnail { + margin-bottom: 0; +} diff --git a/src/assets/img/plots/full_size/bubble_sort_100_average_0_200.png b/src/assets/img/plots/full_size/bubble_sort_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..f322fa9 --- /dev/null +++ b/src/assets/img/plots/full_size/bubble_sort_100_average_0_200.png diff --git a/src/assets/img/plots/full_size/bubble_sort_100_best_0_200.png b/src/assets/img/plots/full_size/bubble_sort_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..2ac258c --- /dev/null +++ b/src/assets/img/plots/full_size/bubble_sort_100_best_0_200.png diff --git a/src/assets/img/plots/full_size/bubble_sort_100_worst_0_200.png b/src/assets/img/plots/full_size/bubble_sort_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..1953999 --- /dev/null +++ b/src/assets/img/plots/full_size/bubble_sort_100_worst_0_200.png diff --git a/src/assets/img/plots/full_size/bubble_sort_optimized_100_average_0_200.png b/src/assets/img/plots/full_size/bubble_sort_optimized_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..d87e2c2 --- /dev/null +++ b/src/assets/img/plots/full_size/bubble_sort_optimized_100_average_0_200.png diff --git a/src/assets/img/plots/full_size/bubble_sort_optimized_100_best_0_200.png b/src/assets/img/plots/full_size/bubble_sort_optimized_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..909757c --- /dev/null +++ b/src/assets/img/plots/full_size/bubble_sort_optimized_100_best_0_200.png diff --git a/src/assets/img/plots/full_size/bubble_sort_optimized_100_worst_0_200.png b/src/assets/img/plots/full_size/bubble_sort_optimized_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..3354d6f --- /dev/null +++ b/src/assets/img/plots/full_size/bubble_sort_optimized_100_worst_0_200.png diff --git a/src/assets/img/plots/full_size/heapsort_100_average_0_200.png b/src/assets/img/plots/full_size/heapsort_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..3e8391c --- /dev/null +++ b/src/assets/img/plots/full_size/heapsort_100_average_0_200.png diff --git a/src/assets/img/plots/full_size/heapsort_100_best_0_200.png b/src/assets/img/plots/full_size/heapsort_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..996bc58 --- /dev/null +++ b/src/assets/img/plots/full_size/heapsort_100_best_0_200.png diff --git a/src/assets/img/plots/full_size/heapsort_100_worst_0_200.png b/src/assets/img/plots/full_size/heapsort_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..eb88419 --- /dev/null +++ b/src/assets/img/plots/full_size/heapsort_100_worst_0_200.png diff --git a/src/assets/img/plots/full_size/insertion_sort_100_average_0_200.png b/src/assets/img/plots/full_size/insertion_sort_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..59ea342 --- /dev/null +++ b/src/assets/img/plots/full_size/insertion_sort_100_average_0_200.png diff --git a/src/assets/img/plots/full_size/insertion_sort_100_best_0_200.png b/src/assets/img/plots/full_size/insertion_sort_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..2787c84 --- /dev/null +++ b/src/assets/img/plots/full_size/insertion_sort_100_best_0_200.png diff --git a/src/assets/img/plots/full_size/insertion_sort_100_worst_0_200.png b/src/assets/img/plots/full_size/insertion_sort_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..01c76dc --- /dev/null +++ b/src/assets/img/plots/full_size/insertion_sort_100_worst_0_200.png diff --git a/src/assets/img/plots/full_size/median_heaps_1000_average_0_200.png b/src/assets/img/plots/full_size/median_heaps_1000_average_0_200.png Binary files differnew file mode 100644 index 0000000..94b99c3 --- /dev/null +++ b/src/assets/img/plots/full_size/median_heaps_1000_average_0_200.png diff --git a/src/assets/img/plots/full_size/median_heaps_1000_best_0_200.png b/src/assets/img/plots/full_size/median_heaps_1000_best_0_200.png Binary files differnew file mode 100644 index 0000000..471c430 --- /dev/null +++ b/src/assets/img/plots/full_size/median_heaps_1000_best_0_200.png diff --git a/src/assets/img/plots/full_size/median_heaps_1000_worst_0_200.png b/src/assets/img/plots/full_size/median_heaps_1000_worst_0_200.png Binary files differnew file mode 100644 index 0000000..f67fef6 --- /dev/null +++ b/src/assets/img/plots/full_size/median_heaps_1000_worst_0_200.png diff --git a/src/assets/img/plots/full_size/median_sorting_1000_average_0_200.png b/src/assets/img/plots/full_size/median_sorting_1000_average_0_200.png Binary files differnew file mode 100644 index 0000000..f41000d --- /dev/null +++ b/src/assets/img/plots/full_size/median_sorting_1000_average_0_200.png diff --git a/src/assets/img/plots/full_size/median_sorting_1000_best_0_200.png b/src/assets/img/plots/full_size/median_sorting_1000_best_0_200.png Binary files differnew file mode 100644 index 0000000..2064218 --- /dev/null +++ b/src/assets/img/plots/full_size/median_sorting_1000_best_0_200.png diff --git a/src/assets/img/plots/full_size/median_sorting_1000_worst_0_200.png b/src/assets/img/plots/full_size/median_sorting_1000_worst_0_200.png Binary files differnew file mode 100644 index 0000000..bd05875 --- /dev/null +++ b/src/assets/img/plots/full_size/median_sorting_1000_worst_0_200.png diff --git a/src/assets/img/plots/full_size/merge_sort_100_average_0_200.png b/src/assets/img/plots/full_size/merge_sort_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..859b4be --- /dev/null +++ b/src/assets/img/plots/full_size/merge_sort_100_average_0_200.png diff --git a/src/assets/img/plots/full_size/merge_sort_100_best_0_200.png b/src/assets/img/plots/full_size/merge_sort_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..00fe9b4 --- /dev/null +++ b/src/assets/img/plots/full_size/merge_sort_100_best_0_200.png diff --git a/src/assets/img/plots/full_size/merge_sort_100_worst_0_200.png b/src/assets/img/plots/full_size/merge_sort_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..57708e7 --- /dev/null +++ b/src/assets/img/plots/full_size/merge_sort_100_worst_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_first_100_average_0_200.png b/src/assets/img/plots/full_size/quicksort_first_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..f67f474 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_first_100_average_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_first_100_best_0_200.png b/src/assets/img/plots/full_size/quicksort_first_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..6baaa38 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_first_100_best_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_first_100_worst_0_200.png b/src/assets/img/plots/full_size/quicksort_first_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..88e13b5 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_first_100_worst_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_last_100_average_0_200.png b/src/assets/img/plots/full_size/quicksort_last_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..df1b631 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_last_100_average_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_last_100_best_0_200.png b/src/assets/img/plots/full_size/quicksort_last_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..af86c53 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_last_100_best_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_last_100_worst_0_200.png b/src/assets/img/plots/full_size/quicksort_last_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..6691abe --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_last_100_worst_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_middle_100_average_0_200.png b/src/assets/img/plots/full_size/quicksort_middle_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..48dd945 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_middle_100_average_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_middle_100_best_0_200.png b/src/assets/img/plots/full_size/quicksort_middle_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..d54af24 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_middle_100_best_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_middle_100_worst_0_200.png b/src/assets/img/plots/full_size/quicksort_middle_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..6cbc721 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_middle_100_worst_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_random_100_average_0_200.png b/src/assets/img/plots/full_size/quicksort_random_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..dc4a841 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_random_100_average_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_random_100_best_0_200.png b/src/assets/img/plots/full_size/quicksort_random_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..34f1afe --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_random_100_best_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_random_100_worst_0_200.png b/src/assets/img/plots/full_size/quicksort_random_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..832fe82 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_random_100_worst_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_second_100_average_0_200.png b/src/assets/img/plots/full_size/quicksort_second_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..9470592 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_second_100_average_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_second_100_best_0_200.png b/src/assets/img/plots/full_size/quicksort_second_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..b7fee1f --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_second_100_best_0_200.png diff --git a/src/assets/img/plots/full_size/quicksort_second_100_worst_0_200.png b/src/assets/img/plots/full_size/quicksort_second_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..30b8a25 --- /dev/null +++ b/src/assets/img/plots/full_size/quicksort_second_100_worst_0_200.png diff --git a/src/assets/img/plots/full_size/selection_sort_100_average_0_200.png b/src/assets/img/plots/full_size/selection_sort_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..a433fcf --- /dev/null +++ b/src/assets/img/plots/full_size/selection_sort_100_average_0_200.png diff --git a/src/assets/img/plots/full_size/selection_sort_100_best_0_200.png b/src/assets/img/plots/full_size/selection_sort_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..9e63988 --- /dev/null +++ b/src/assets/img/plots/full_size/selection_sort_100_best_0_200.png diff --git a/src/assets/img/plots/full_size/selection_sort_100_worst_0_200.png b/src/assets/img/plots/full_size/selection_sort_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..0562ce8 --- /dev/null +++ b/src/assets/img/plots/full_size/selection_sort_100_worst_0_200.png diff --git a/src/assets/img/plots/preview/bubble_sort_100_average_0_200.png b/src/assets/img/plots/preview/bubble_sort_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..ab3b5c3 --- /dev/null +++ b/src/assets/img/plots/preview/bubble_sort_100_average_0_200.png diff --git a/src/assets/img/plots/preview/bubble_sort_100_best_0_200.png b/src/assets/img/plots/preview/bubble_sort_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..4311830 --- /dev/null +++ b/src/assets/img/plots/preview/bubble_sort_100_best_0_200.png diff --git a/src/assets/img/plots/preview/bubble_sort_100_worst_0_200.png b/src/assets/img/plots/preview/bubble_sort_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..1905270 --- /dev/null +++ b/src/assets/img/plots/preview/bubble_sort_100_worst_0_200.png diff --git a/src/assets/img/plots/preview/bubble_sort_optimized_100_average_0_200.png b/src/assets/img/plots/preview/bubble_sort_optimized_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..32d5504 --- /dev/null +++ b/src/assets/img/plots/preview/bubble_sort_optimized_100_average_0_200.png diff --git a/src/assets/img/plots/preview/bubble_sort_optimized_100_best_0_200.png b/src/assets/img/plots/preview/bubble_sort_optimized_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..2bd1190 --- /dev/null +++ b/src/assets/img/plots/preview/bubble_sort_optimized_100_best_0_200.png diff --git a/src/assets/img/plots/preview/bubble_sort_optimized_100_worst_0_200.png b/src/assets/img/plots/preview/bubble_sort_optimized_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..c9fb6cf --- /dev/null +++ b/src/assets/img/plots/preview/bubble_sort_optimized_100_worst_0_200.png diff --git a/src/assets/img/plots/preview/heapsort_100_average_0_200.png b/src/assets/img/plots/preview/heapsort_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..e29b94e --- /dev/null +++ b/src/assets/img/plots/preview/heapsort_100_average_0_200.png diff --git a/src/assets/img/plots/preview/heapsort_100_best_0_200.png b/src/assets/img/plots/preview/heapsort_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..47d7790 --- /dev/null +++ b/src/assets/img/plots/preview/heapsort_100_best_0_200.png diff --git a/src/assets/img/plots/preview/heapsort_100_worst_0_200.png b/src/assets/img/plots/preview/heapsort_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..1d6daac --- /dev/null +++ b/src/assets/img/plots/preview/heapsort_100_worst_0_200.png diff --git a/src/assets/img/plots/preview/insertion_sort_100_average_0_200.png b/src/assets/img/plots/preview/insertion_sort_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..40d8dce --- /dev/null +++ b/src/assets/img/plots/preview/insertion_sort_100_average_0_200.png diff --git a/src/assets/img/plots/preview/insertion_sort_100_best_0_200.png b/src/assets/img/plots/preview/insertion_sort_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..15c83d0 --- /dev/null +++ b/src/assets/img/plots/preview/insertion_sort_100_best_0_200.png diff --git a/src/assets/img/plots/preview/insertion_sort_100_worst_0_200.png b/src/assets/img/plots/preview/insertion_sort_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..60e8a96 --- /dev/null +++ b/src/assets/img/plots/preview/insertion_sort_100_worst_0_200.png diff --git a/src/assets/img/plots/preview/merge_sort_100_average_0_200.png b/src/assets/img/plots/preview/merge_sort_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..7f63708 --- /dev/null +++ b/src/assets/img/plots/preview/merge_sort_100_average_0_200.png diff --git a/src/assets/img/plots/preview/merge_sort_100_best_0_200.png b/src/assets/img/plots/preview/merge_sort_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..0e460c0 --- /dev/null +++ b/src/assets/img/plots/preview/merge_sort_100_best_0_200.png diff --git a/src/assets/img/plots/preview/merge_sort_100_worst_0_200.png b/src/assets/img/plots/preview/merge_sort_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..a756efb --- /dev/null +++ b/src/assets/img/plots/preview/merge_sort_100_worst_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_first_100_average_0_200.png b/src/assets/img/plots/preview/quicksort_first_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..6df6b1f --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_first_100_average_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_first_100_best_0_200.png b/src/assets/img/plots/preview/quicksort_first_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..d49cc5c --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_first_100_best_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_first_100_worst_0_200.png b/src/assets/img/plots/preview/quicksort_first_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..8df79c5 --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_first_100_worst_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_last_100_average_0_200.png b/src/assets/img/plots/preview/quicksort_last_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..dc09d2b --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_last_100_average_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_last_100_best_0_200.png b/src/assets/img/plots/preview/quicksort_last_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..13bee78 --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_last_100_best_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_last_100_worst_0_200.png b/src/assets/img/plots/preview/quicksort_last_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..0cd0d11 --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_last_100_worst_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_middle_100_average_0_200.png b/src/assets/img/plots/preview/quicksort_middle_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..09e70ed --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_middle_100_average_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_middle_100_best_0_200.png b/src/assets/img/plots/preview/quicksort_middle_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..be324b1 --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_middle_100_best_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_middle_100_worst_0_200.png b/src/assets/img/plots/preview/quicksort_middle_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..a77ad5c --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_middle_100_worst_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_random_100_average_0_200.png b/src/assets/img/plots/preview/quicksort_random_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..be98dec --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_random_100_average_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_random_100_best_0_200.png b/src/assets/img/plots/preview/quicksort_random_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..466e62d --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_random_100_best_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_random_100_worst_0_200.png b/src/assets/img/plots/preview/quicksort_random_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..a80f63e --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_random_100_worst_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_second_100_average_0_200.png b/src/assets/img/plots/preview/quicksort_second_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..4997d4c --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_second_100_average_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_second_100_best_0_200.png b/src/assets/img/plots/preview/quicksort_second_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..ab09e23 --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_second_100_best_0_200.png diff --git a/src/assets/img/plots/preview/quicksort_second_100_worst_0_200.png b/src/assets/img/plots/preview/quicksort_second_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..c2489cf --- /dev/null +++ b/src/assets/img/plots/preview/quicksort_second_100_worst_0_200.png diff --git a/src/assets/img/plots/preview/selection_sort_100_average_0_200.png b/src/assets/img/plots/preview/selection_sort_100_average_0_200.png Binary files differnew file mode 100644 index 0000000..f162f50 --- /dev/null +++ b/src/assets/img/plots/preview/selection_sort_100_average_0_200.png diff --git a/src/assets/img/plots/preview/selection_sort_100_best_0_200.png b/src/assets/img/plots/preview/selection_sort_100_best_0_200.png Binary files differnew file mode 100644 index 0000000..aa787f9 --- /dev/null +++ b/src/assets/img/plots/preview/selection_sort_100_best_0_200.png diff --git a/src/assets/img/plots/preview/selection_sort_100_worst_0_200.png b/src/assets/img/plots/preview/selection_sort_100_worst_0_200.png Binary files differnew file mode 100644 index 0000000..c518ece --- /dev/null +++ b/src/assets/img/plots/preview/selection_sort_100_worst_0_200.png diff --git a/src/index.html b/src/index.html new file mode 100644 index 0000000..20c8386 --- /dev/null +++ b/src/index.html @@ -0,0 +1,228 @@ +--- +title: Main page +layout: plain +navbar: + link: Project +links: + - {rel: stylesheet, href: assets/css/plots.css} +input_kind: + - best + - average + - worst +plots: + - codename: bubble_sort + brief_name: Bubble sort + display_name: Bubble sort + min_length: 0 + max_length: 200 + iterations: 100 + complexity: + best: O(<var>n</var>) + average: O(<var>n</var><sup>2</sup>) + worst: O(<var>n</var><sup>2</sup>) + - codename: bubble_sort_optimized + brief_name: "… \"optimized\"" + display_name: "\"Optimized\" bubble sort" + min_length: 0 + max_length: 200 + iterations: 100 + complexity: + best: O(<var>n</var>) + average: O(<var>n</var><sup>2</sup>) + worst: O(<var>n</var><sup>2</sup>) + - codename: heapsort + brief_name: Heapsort + display_name: Heapsort + min_length: 0 + max_length: 200 + iterations: 100 + complexity: O(<var>n</var> log <var>n</var>) + - codename: insertion_sort + brief_name: Insertion sort + display_name: Insertion sort + min_length: 0 + max_length: 200 + iterations: 100 + complexity: + best: O(<var>n</var>) + average: O(<var>n</var><sup>2</sup>) + worst: O(<var>n</var><sup>2</sup>) + - codename: merge_sort + brief_name: Merge sort + display_name: Merge sort + min_length: 0 + max_length: 200 + iterations: 100 + complexity: O(<var>n</var> log <var>n</var>) + - codename: quicksort_first + brief_name: Quicksort (first element as pivot) + display_name: Quicksort (first element as pivot) + min_length: 0 + max_length: 200 + iterations: 100 + complexity: + best: O(<var>n</var><sup>2</sup>) + average: O(<var>n</var> log <var>n</var>) + worst: O(<var>n</var><sup>2</sup>) + - codename: quicksort_second + brief_name: "… second element…" + display_name: Quicksort (second element as pivot) + min_length: 0 + max_length: 200 + iterations: 100 + complexity: + best: O(<var>n</var><sup>2</sup>) + average: O(<var>n</var> log <var>n</var>) + worst: O(<var>n</var><sup>2</sup>) + - codename: quicksort_middle + brief_name: "… middle element…" + display_name: Quicksort (middle element as pivot) + min_length: 0 + max_length: 200 + iterations: 100 + complexity: O(<var>n</var> log <var>n</var>) + - codename: quicksort_last + brief_name: "… last element…" + display_name: Quicksort (last element as pivot) + min_length: 0 + max_length: 200 + iterations: 100 + complexity: + best: O(<var>n</var><sup>2</sup>) + average: O(<var>n</var> log <var>n</var>) + worst: O(<var>n</var><sup>2</sup>) + - codename: quicksort_random + brief_name: "… random element…" + display_name: Quicksort (random element as pivot) + min_length: 0 + max_length: 200 + iterations: 100 + complexity: O(<var>n</var> log <var>n</var>) + - codename: selection_sort + brief_name: Selection sort + display_name: Selection sort + min_length: 0 + max_length: 200 + iterations: 100 + complexity: O(<var>n</var><sup>2</sup>) +--- +<h1>{{ site.settings.project.name }}</h1> + +<div class="row"> + <div class="col-xs-12 col-sm-10 col-md-8"> + <p class="text-muted">The goals of this "project" include a) familiarizing +myself with a few sorting algorithms by examining their (possibly, simplified) +implementations and b) studying the way algorithm's running time changes in +relation to the length of its input (a.k.a. identifying its time +complexity).</p> + <p class="text-muted">A simple way to visualize the way algorithm's running +time changes is to make appropriate measurements and plot them on a nice graph. +The results of course are highly dependent on the hardware used, while the +graph's look depends on the software used for rendering.</p> + <p class="text-muted">Both the hardware & the software that were used +to produce the plots are listed below.</p> + <table class="table table-bordered wide-enough"> + <tr> + <th>CPU</th> + <td><a href="https://www.amd.com/en/support/downloads/drivers.html/processors/ryzen/ryzen-5000-series/amd-ryzen-7-5700x.html">AMD Ryzen 7 5700X</a></td> + </tr> + <tr> + <th>OS</th> + <td>Linux 6.12</td> + </tr> + <tr> + <th>CPython</th> + <td>3.14.2</td> + </tr> + <tr> + <th>matplotlib</th> + <td>3.10.8</td> + </tr> + </table> + </div> +</div> + +{% if page.plots and page.plots != empty %} +<div class="row"> + <div class="col-xs-12 col-sm-10 col-md-8"> + <p>The table & plots below are just an attempt to nicely lay out the +data generated using the code from the project repository's <code>master</code> +branch. +Visit <a href="{{ site.github.repository_url }}">{{ site.github.repository_url }}</a> for more details.</p> + + <p>Each of the implemented algorithms was provided with three input +sequences:</p> + <ul> + <li>a list of <var>n</var> consecutive numbers sorted in ascending order,</li> + <li>… in descending order,</li> + <li>… in random order.</li> + </ul> + <p>Use the table below to quickly navigate to the plots for the +corresponding algorithm.</p> + + <table class="table table-bordered table-hover"> + <thead> + <tr> + <th class="text-center" rowspan="2">Algorithm</th> + <th class="text-center" colspan="{{ page.input_kind.size }}">Complexity</th> + </tr> + <tr> + {% for input_kind in page.input_kind %} + <th class="text-center">{{ input_kind | capitalize }}</th> + {% endfor %} + </tr> + </thead> + <tbody> +{% for algorithm in page.plots %} +<tr> + <td><a href="#{{ algorithm.codename }}">{{ algorithm.brief_name }}</a></td> + {% for input_kind in page.input_kind %} + {% if algorithm.complexity[input_kind] %} + {% assign complexity = algorithm.complexity[input_kind] %} + {% else %} + {% assign complexity = algorithm.complexity %} + {% endif %} + <td>{{ complexity }}</td> + {% endfor %} +</tr> +{% endfor %} + </tbody> + </table> + </div> +</div> + +{% for algorithm in page.plots %} +<a id="{{ algorithm.codename }}"></a> +<h3>{{ algorithm.display_name }}</h3> +<div class="row"> + {% for input_kind in page.input_kind %} + {% if algorithm.iterations[input_kind] %} + {% assign iterations = algorithm.iterations[input_kind] %} + {% else %} + {% assign iterations = algorithm.iterations %} + {% endif %} + {% if algorithm.complexity[input_kind] %} + {% assign complexity = algorithm.complexity[input_kind] %} + {% else %} + {% assign complexity = algorithm.complexity %} + {% endif %} + {% capture stem %}{{ algorithm.codename }}_{{ iterations }}_{{ input_kind }}_{{ algorithm.min_length }}_{{ algorithm.max_length }}{% endcapture %} + <div class="col-xs-12 col-sm-6 col-md-4"> + <div class="thumbnail"> + <a class="thumbnail" href="{{ site.baseurl }}/assets/img/plots/full_size/{{ stem }}.png"> + <img class="img-responsive" src="{{ site.baseurl }}/assets/img/plots/preview/{{ stem }}.png" alt="{{ algorithm.display_name | escape }}, {{ iterations }} iterations, {{ input_kind }} case"/> + </a> + <div class="caption"> + <strong>{{ algorithm.display_name }}</strong><br/> + {{ input_kind | capitalize }} case, {{ complexity }} + </div> + </div> + </div> + {% endfor %} +</div> +{% endfor %} + +{% else %} +<p class="h3">Sorry, no plots have been added yet.</p> +<hr/> +{% endif %} |
