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>
Loading
Please sign in to comment