Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,32 @@
|
|||
F merge(left, right)
|
||||
[Int] result
|
||||
V left_idx = 0
|
||||
V right_idx = 0
|
||||
L left_idx < left.len & right_idx < right.len
|
||||
I left[left_idx] <= right[right_idx]
|
||||
result.append(left[left_idx])
|
||||
left_idx++
|
||||
E
|
||||
result.append(right[right_idx])
|
||||
right_idx++
|
||||
|
||||
I left_idx < left.len
|
||||
result.extend(left[left_idx ..])
|
||||
I right_idx < right.len
|
||||
result.extend(right[right_idx ..])
|
||||
R result
|
||||
|
||||
F merge_sort(m)
|
||||
I m.len <= 1
|
||||
R m
|
||||
|
||||
V middle = m.len I/ 2
|
||||
V left = m[0.<middle]
|
||||
V right = m[middle..]
|
||||
|
||||
left = merge_sort(left)
|
||||
right = merge_sort(right)
|
||||
R Array(merge(left, right))
|
||||
|
||||
V arr = [7, 6, 5, 9, 8, 4, 3, 1, 2, 0]
|
||||
print(merge_sort(arr))
|
||||
Loading…
Add table
Add a link
Reference in a new issue