Jump to content

Sorting algorithms/Bubble sort: Difference between revisions

Better implementation
m (Fix bug)
(Better implementation)
Line 4,074:
Original source: [http://seed7.sourceforge.net/algorith/sorting.htm#bubbleSort]
=={{header|Shen}}==
Bubble sort a vector in-place, using the < operator for comparison.
<lang shen>(tc +)
 
Line 4,112 ⟶ 4,113:
(vector-> (value *arr*) 3 4)
(vector-> (value *arr*) 4 2)
(vector-> (value *arr*) 5 8)</lang>
 
<lang shen>(bubble-sort (value *arr*))</lang>
 
Here is a more idiomatic implementation:
{{trans|Qi}}
 
<lang shen>(tc +)
 
(define bubble-shot
{ (vector number) --> (vector number) }
(@v A <>) -> (@v A <>)
(@v A B R) -> (@v B (bubble-shot (@v A R))) where (> A B)
(@v A R) -> (@v A (bubble-shot R)))
 
(define bubble-sort
{ (vector number) --> (vector number) }
X -> (fix (function bubble-shot) X))</lang>
 
<lang shen>(bubble-sort (@v 5 1 4 2 3 <>))</lang>
 
=={{header|Sidef}}==
37

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.