Sorting algorithms/Quicksort: Difference between revisions

no edit summary
m (→‎{{header|Wren}}: Library name change.)
No edit summary
Line 6,471:
quicksort(&elements, indices(elements))
}</lang>
 
=={{header|Symsyn}}==
<lang symsyn>
 
x : 23 : 15 : 99 : 146 : 3 : 66 : 71 : 5 : 23 : 73 : 19
 
quicksort param l r
 
l i
r j
((l+r) shr 1) k
x.k pivot
 
repeat
if pivot > x.i
+ cmp
+ i
goif
endif
 
if pivot < x.j
+ cmp
- j
goif
endif
 
if i <= j
swap x.i x.j
- j
+ i
endif
 
if i <= j
go repeat
endif
 
if l < j
save l r i j
call quicksort l j
restore l r i j
endif
if i < r
save l r i j
call quicksort i r
restore l r i j
endif
 
return
 
start
 
' original values : ' $r
 
call showvalues
 
call quicksort 0 10
 
' sorted values : ' $r
 
call showvalues
 
stop
 
showvalues
$s
i
if i <= 10
"$s ' ' x.i ' '" $s
+ i
goif
endif
" $r $s " []
 
return
 
</lang>
 
=={{header|Tailspin}}==
Anonymous user