// quicksort example from http://haxe.org/doc/snip/quicksort class Quicksort { static var arr = [4,8,0,3,9,1,5,2,6,7]; static function quicksort( lo : Int, hi : Int ) : Void { var i = lo; var j = hi; var buf = arr; var p = buf[(lo+hi)>>1]; while( i <= j ) { while( arr[i] > p ) i++; while( arr[j] < p ) j--; if( i <= j ) { var t = buf[i]; buf[i++] = buf[j]; buf[j--] = t; } } if( lo < j ) quicksort( lo, j ); if( i < hi ) quicksort( i, hi ); } static function main() { quicksort( 0, arr.length-1 ); trace(arr); } }