Sorting algorithms/Quicksort: Difference between revisions

Line 4,010:
=={{header|EasyLang}}==
<syntaxhighlight lang="text">
funcproc qsort left right . d[] .
while left < right
# partition
piv = d[left]
mid = left
for i = left + 1 to right
if d[i] < piv
mid += 1
swap d[i] d[mid]
.
.
swap d[left] d[mid]
.
swap d[left] d[mid]#
if mid < (right + left) / 2
#
if mid < (right + call qsort left) /mid - 1 2d[]
call qsort left = mid -+ 1 d[]
left = mid + 1else
call qsort mid + 1 right d[]
else
call qsort mid +right 1= rightmid d[]- 1
right = mid - 1.
.
.
.
func sort . d[] .
call qsort 1 len d[] d[]
.
d[] = [ 29 4 72 44 55 26 27 77 92 5 ]
1,992

edits