Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,51 @@
|
|||
include "NSLog.incl"
|
||||
|
||||
local fn Quicksort( qs as CFMutableArrayRef, l as NSInteger, r as NSInteger )
|
||||
UInt64 size = r - l + 1
|
||||
|
||||
if size < 2 then exit fn
|
||||
|
||||
NSinteger i = l, j = r
|
||||
NSinteger pivot = fn NumberIntegerValue( qs[l+size / 2] )
|
||||
|
||||
do
|
||||
while fn NumberIntegerValue( qs[i] ) < pivot
|
||||
i++
|
||||
wend
|
||||
while pivot < fn NumberIntegerValue( qs[j] )
|
||||
j--
|
||||
wend
|
||||
if ( i <= j )
|
||||
MutableArrayExchangeObjects( qs, i, j )
|
||||
i++
|
||||
j--
|
||||
end if
|
||||
until i > j
|
||||
|
||||
if l < j then fn Quicksort( qs, l, j )
|
||||
if i < r then fn Quicksort( qs, i, r )
|
||||
end fn
|
||||
|
||||
CFMutableArrayRef qs
|
||||
CFArrayRef unsorted
|
||||
NSUInteger i, amount
|
||||
|
||||
qs = fn MutableArrayWithCapacity(0)
|
||||
|
||||
for i = 0 to 25
|
||||
if i mod 2 == 0 then amount = 100 else amount = 10000
|
||||
MutableArrayInsertObjectAtIndex( qs, fn NumberWithInteger( rnd(amount) ), i )
|
||||
next
|
||||
|
||||
unsorted = fn ArrayWithArray( qs )
|
||||
|
||||
fn QuickSort( qs, 0, len(qs) - 1 )
|
||||
|
||||
NSLog( @"\n-----------------\nUnsorted : Sorted\n-----------------" )
|
||||
for i = 0 to 25
|
||||
NSLog( @"%8ld : %-8ld", fn NumberIntegerValue( unsorted[i] ), fn NumberIntegerValue( qs[i] ) )
|
||||
next
|
||||
|
||||
randomize
|
||||
|
||||
HandleEvents
|
||||
Loading…
Add table
Add a link
Reference in a new issue