zephyr/lib/libc
Christopher Friedt bd83df1552 libc: minimal: add qsort to the minimal libc
This change implements qsort() for the minimal libc via Heapsort.

Heapsort time complexity is O(n log(n)) in the best, average,
and worst cases. It is O(1) in space complexity (i.e. sorts
in-place) and is iterative rather than recursive. Heapsort is
not stable (i.e. does not preserve order of identical elements).

On cortex-m0, this implementation occupies ~240 bytes.

Fixes #28896

Signed-off-by: Christopher Friedt <chrisfriedt@gmail.com>
2021-11-10 07:00:36 -05:00
..
arcmwdt lib: libc: Drop z_ prefix from stdio syscalls 2021-09-11 04:47:01 -04:00
armstdc armclang: threading_weak.c source file added for armclang 2021-08-30 08:54:23 -04:00
minimal libc: minimal: add qsort to the minimal libc 2021-11-10 07:00:36 -05:00
newlib Revert "lib: newlib: Add workaround for #38258" 2021-09-24 07:35:40 -04:00
CMakeLists.txt armclang: ARM Compiler C library support 2021-08-30 08:54:23 -04:00
Kconfig armclang: ARM Compiler C library support 2021-08-30 08:54:23 -04:00