Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,55 @@
|
|||
Module cocktailSort {
|
||||
k=(3,2,1)
|
||||
print k
|
||||
cocktailSort(k)
|
||||
print k
|
||||
k=("c","b","a")
|
||||
print k
|
||||
cocktailSortString(k)
|
||||
print k
|
||||
Dim a(5)
|
||||
a(0)=1,2,5,6,3
|
||||
print a()
|
||||
cocktailSort(a())
|
||||
print a()
|
||||
End
|
||||
Sub cocktailSort(a)
|
||||
\\ this is like Link a to a() but using new for a() - shadow any a()
|
||||
push &a : read new &a()
|
||||
local swapped, lenA2=len(a)-2
|
||||
do
|
||||
for i=0 to lenA2
|
||||
if a(i) > a(i+1) then swap a(i), a(i+1): swapped = true
|
||||
next
|
||||
if swapped then
|
||||
swapped~
|
||||
for i=lenA2 to 0
|
||||
if a(i) > a(i+1) then swap a(i), a(i+1): swapped = true
|
||||
next
|
||||
end if
|
||||
until not swapped
|
||||
End Sub
|
||||
Sub cocktailSortString(a)
|
||||
push &a : read new &a$()
|
||||
local swapped, lenA2=len(a)-2
|
||||
do
|
||||
for i=0 to lenA2
|
||||
if a$(i) > a$(i+1) then
|
||||
swap a$(i), a$(i+1)
|
||||
swapped = true
|
||||
end if
|
||||
next
|
||||
if swapped then
|
||||
swapped~
|
||||
for i=lenA2 to 0
|
||||
if a$(i) > a$(i+1) then
|
||||
swap a$(i), a$(i+1)
|
||||
swapped = true
|
||||
end if
|
||||
next
|
||||
end if
|
||||
until not swapped
|
||||
|
||||
End Sub
|
||||
}
|
||||
cocktailSort
|
||||
Loading…
Add table
Add a link
Reference in a new issue