Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local arr={1,3,6,2,7,4,8,9,5}
- function minToMax(a,b)
- return a>b
- end
- function partition (array, startI, endI,f)
- local marker = startI;
- for i = startI,endI do
- if ( f(array[i],array[endI]) ) then
- local temp = array[marker];
- array[marker] = array[i];
- array[i] = temp;
- marker =marker+ 1;
- end
- end
- return marker - 1,array
- end
- function quicksort(array, start, endI, f)
- local pivot,arr1 = partition(array, start, endI,f);
- arr1=quicksort(arr1, start, pivot-1,f);
- return quicksort(arr1, pivot+1, endI,f);
- end
- arr=quicksort(arr,1,#arr,minToMax)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement