home *** CD-ROM | disk | FTP | other *** search
- 10000 rem super-quicksort
- 10010 dimlg(100),rg(100):ti$="000000":lg(1)=1:rg(1)=a:z=0:gosub10012
- 10011 goto50000
- 10012 z=z+1:iflg(z)>=rg(z)then10025
- 10013 x=lg(z):y=rg(z):ify<=x+1then10021
- 10014 b=int(x+y)/2:vg$=a$(b)
- 10015 ifx>ythen10023
- 10016 ifa$(x)<vg$thenx=x+1:goto10016
- 10017 ifa$(y)>vg$theny=y-1:goto10017
- 10018 ifx>ythen10023
- 10019 s$=a$(x):a$(x)=a$(y):a$(y)=s$
- 10020 x=x+1:y=y-1:goto10015
- 10021 ifa$(x)<=a$(y)then10025
- 10022 s$=a$(x):a$(x)=a$(y):a$(y)=s$:goto10025
- 10023 rg(z+1)=y:lg(z+1)=lg(z):gosub10012
- 10024 lg(z+1)=rg(z+1)+1:rg(z+1)=rg(z):gosub10012
- 10025 z=z-1:return
-