此处左右交替上升排序的本质是冒泡排序
最外层循环控制次数,两个内层循环分别负责控制交替排序
代码如下:
'利用冒泡算法实现左右交替上升排序
Private Sub Form_click()
Dim a(1 To 9) As Integer
a(1) = 48
a(2) = 34
a(3) = 86
a(4) = 46
a(5) = 85
a(6) = 100
a(7) = 79
a(8) = 17
a(9) = 39
FontSize = 30 '设置控制台输出大小的语句
Print '\n\r'
n = UBound(a) '取得数组上界
For i = 1 To n \ 2 '控制循环轮数epoch
For j = n - i + 1 To i + 1 Step -1 '把未冒泡的数字最小的放到最左边,向左冒泡
If a(j) < a(j - 1) Then
t = a(j)
a(j) = a(j - 1)
a(j - 1) = t
End If
Next j
For j = i + 1 To n - i '把未冒泡的数字最小的放到最右边,向右冒泡
If a(j) < a(j + 1) Then
t = a(j)
a(j) = a(j + 1)
a(j + 1) = t
End If
Next j
Next i
For i = 1 To n Step 1
num = num & a(i) & " " '将排序好的数组保存到变量
N