From 01d887955f72b561a6e604c96292f8f1053d3839 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Fri, 19 Mar 2021 18:48:38 +0200 Subject: Add quicksort implementation to stdlib --- libk/test/quicksort.cc | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 libk/test/quicksort.cc (limited to 'libk/test/quicksort.cc') diff --git a/libk/test/quicksort.cc b/libk/test/quicksort.cc new file mode 100644 index 0000000..582e49e --- /dev/null +++ b/libk/test/quicksort.cc @@ -0,0 +1,16 @@ +#include + +constexpr bool is_sorted(int a[], size_t from, size_t to) { + for (; from < to - 1; ++from) + if (a[from] > a[from + 1]) + return false; + return true; +} + +static_assert([]() { + int a[] = {12, 82, 347, 92, 74, 123, 0, 56}; + const size_t a_len = sizeof(a) / sizeof(int); + + qsort(a, 0, a_len - 1); + return is_sorted(a, 0, a_len - 1); +}()); -- cgit v1.2.1