Sorting algorithms/Bubble sort: Difference between revisions
Content added Content deleted
Line 5,189: | Line 5,189: | ||
<pre><140,212,247,270,315,362,449,532,567,677></pre> |
<pre><140,212,247,270,315,362,449,532,567,677></pre> |
||
=={{header|VBA}}== |
|||
{{trans|Phix}}<lang vb>Private Function bubble_sort(s As Variant) As Variant |
|||
Dim tmp As Variant |
|||
Dim changed As Boolean |
|||
For j = UBound(s) To 1 Step -1 |
|||
changed = False |
|||
For i = 1 To j - 1 |
|||
If s(i) > s(i + 1) Then |
|||
tmp = s(i) |
|||
s(i) = s(i + 1) |
|||
s(i + 1) = tmp |
|||
changed = True |
|||
End If |
|||
Next i |
|||
If Not changed Then |
|||
Exit For |
|||
End If |
|||
Next j |
|||
bubble_sort = s |
|||
End Function |
|||
Public Sub main() |
|||
s = [{4, 15, "delta", 2, -31, 0, "alfa", 19, "gamma", 2, 13, "beta", 782, 1}] |
|||
Debug.Print "Before: " |
|||
Debug.Print Join(s, ", ") |
|||
Debug.Print "After: " |
|||
Debug.Print Join(bubble_sort(s), ", ") |
|||
End Sub</lang>{{out}} |
|||
<pre>Before: |
|||
4, 15, delta, 2, -31, 0, alfa, 19, gamma, 2, 13, beta, 782, 1 |
|||
After: |
|||
-31, 0, 1, 2, 2, 4, 13, 15, 19, 782, alfa, beta, delta, gamma</pre> |
|||
=={{header|VBScript}}== |
=={{header|VBScript}}== |
||
Doing the decr and incr thing is superfluous, really. I just had stumbled over the byref thing for <code>swap</code> and wanted to see where else it would work. |
Doing the decr and incr thing is superfluous, really. I just had stumbled over the byref thing for <code>swap</code> and wanted to see where else it would work. |