Initial data commit

This commit is contained in:
Ingy döt Net 2023-07-01 11:58:00 -04:00
parent 72d218235f
commit f23f22d71c
199087 changed files with 3378941 additions and 0 deletions

View file

@ -0,0 +1,12 @@
let rec strand_sort (cmp : 'a -> 'a -> int) : 'a list -> 'a list = function
[] -> []
| x::xs ->
let rec extract_strand x = function
[] -> [x], []
| x1::xs when cmp x x1 <= 0 ->
let strand, rest = extract_strand x1 xs in x::strand, rest
| x1::xs ->
let strand, rest = extract_strand x xs in strand, x1::rest
in
let strand, rest = extract_strand x xs in
List.merge cmp strand (strand_sort cmp rest)