Hi Scott,

Good deal! I used your data generator and then did this:

data: read/lines %data-1.txt

compare-items: func [a b /local aa bb] [
    aa: to integer! first parse a none
    bb: to integer! first parse b none
    either aa = bb [0][either aa < bb [-1][1]]
]

t: now/time/precise

sort/compare data :compare-items

print now/time/precise - t

halt


which gave me these results for 3 runs (on a P900 w/384 Meg of RAM):

1. 0:00:20.099
2. 0:00:20.269
3. 0:00:20.099

Changing the comparisons to use Sunanda's approach (assuming equality is
least likely):  either aa < bb [-1][either aa > bb [1][0]]

1. 0:00:19.508
2. 0:00:19.528
3. 0:00:19.518

Making the data a hash! didn't speed it up and trying to make it a list!
didn't work. Even just a plain SORT on the list didn't work, and inserted
'end for some items. Haven't investigated.

The data looks stable at a glance. Not verified though.

>> data
== [" 000 c3wef22aeka  33" " 000 aw333afk c2e 2e" " 000 ake3c2we3  3a2f" "
000 wa2k2c ee3 3fa3" " 000 wa fc32a2k3ee 3" " 000 3k3e32...


--Gregg

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.

Reply via email to