Data update
This commit is contained in:
parent
35bcdeebf8
commit
74c69a0df6
2427 changed files with 31826 additions and 3468 deletions
|
|
@ -0,0 +1,42 @@
|
|||
global array
|
||||
dim array = {10, 1, 2, -6, 3}
|
||||
lb = array[?,]-1 : ub = array[?]-1
|
||||
|
||||
print "unsort ";
|
||||
for i = lb to ub
|
||||
print rjust(array[i], 4);
|
||||
next i
|
||||
|
||||
call Bogosort(array) # ordenar el array
|
||||
|
||||
print chr(10); " sort ";
|
||||
for i = lb to ub
|
||||
print rjust(array[i], 4);
|
||||
next i
|
||||
end
|
||||
|
||||
subroutine shuffle(array)
|
||||
n = array[?] : m = array[?]*2
|
||||
|
||||
for k = 1 to m
|
||||
i = int(Rand*n)
|
||||
j = int(Rand*n)
|
||||
tmp = array[i] #swap lb(i), lb(j)
|
||||
array[i] = array[j]
|
||||
array[j] = tmp
|
||||
next k
|
||||
end subroutine
|
||||
|
||||
function inorder(array)
|
||||
n = array[?]
|
||||
for i = 0 to n-2
|
||||
if array[i] > array[i+1] then return false
|
||||
next i
|
||||
return true
|
||||
end function
|
||||
|
||||
subroutine Bogosort(array)
|
||||
while not inorder(array)
|
||||
call shuffle(array)
|
||||
end while
|
||||
end subroutine
|
||||
Loading…
Add table
Add a link
Reference in a new issue