aboutsummaryrefslogtreecommitdiff
path: root/libk/test/quicksort.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libk/test/quicksort.cc')
-rw-r--r--libk/test/quicksort.cc16
1 files changed, 16 insertions, 0 deletions
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 <stdlib/quicksort.h>
+
+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);
+}());