Scott,

How about something like this. The idea being to loop through the lines and insert them into random keys of an array, then combine the array at the end. This avoids any comparisons involved in sorting - it just sort of scatters them in the array and then pulls them back out. Also the random number is picked to be large so you only get a very small number of collisions forcing you to pick your random number more than once.

on mouseUp
  repeat 6000
    put 1 & cr after temp
  end repeat
  repeat 8000
    put 2 & cr after temp
  end repeat
  delete last char of temp
  put the millisecs into MS
  put empty into newValues
  put (number of lines in temp) into numLines
  put numLines*1000 into randomRange
  repeat for each line l in temp
    repeat
      put random(randomRange) into randomNumber
      if (newValues[randomNumber] is empty) then
        put l into newValues[randomNumber]
        exit repeat
      end if
    end repeat
  end repeat
  combine newValues using return
  put the millisecs - MS
end mouseUp

_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to