Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,38 @@
|
|||
get "libhdr"
|
||||
|
||||
let mergesort(A, n) be if n >= 2
|
||||
$( let m = n / 2
|
||||
mergesort(A, m)
|
||||
mergesort(A+m, n-m)
|
||||
merge(A, n, m)
|
||||
$)
|
||||
and merge(A, n, m) be
|
||||
$( let i, j = 0, m
|
||||
let x = getvec(n)
|
||||
for k=0 to n-1
|
||||
x!k := A!valof
|
||||
test j~=n & (i=m | A!j < A!i)
|
||||
$( j := j + 1
|
||||
resultis j - 1
|
||||
$)
|
||||
else
|
||||
$( i := i + 1
|
||||
resultis i - 1
|
||||
$)
|
||||
for i=0 to n-1 do a!i := x!i
|
||||
freevec(x)
|
||||
$)
|
||||
|
||||
let write(s, A, len) be
|
||||
$( writes(s)
|
||||
for i=0 to len-1 do writed(A!i, 4)
|
||||
wrch('*N')
|
||||
$)
|
||||
|
||||
let start() be
|
||||
$( let array = table 4,65,2,-31,0,99,2,83,782,1
|
||||
let length = 10
|
||||
write("Before: ", array, length)
|
||||
mergesort(array, length)
|
||||
write("After: ", array, length)
|
||||
$)
|
||||
Loading…
Add table
Add a link
Reference in a new issue