常用排序算法之选择排序与冒泡排序

来源:互联网 发布:松岛菜菜子知乎 编辑:程序博客网 时间:2024/04/26 03:56

 

'选择,冒泡排序
Option Explicit

Dim Result, I
Dim TestData(100)
const N = 100

Randomize
For I = 0 To N - 1
TestData(I) 
= ROUND(RND() * 32768)
Next

'选择排序
Sub SSort(byRef Array, low, hi)
Dim t, i, j, pos
For i = hi To low + 1 Step -1
    pos 
= i
    
For j = i - 1 To low Step -1
        
If Array(pos) < Array(j) Then
            pos 
= j
        
End IF
    
Next
    t 
= Array(i)
    
Array(i) = Array(pos)
    
Array(pos) = t
Next
End Sub

'冒泡排序
Sub BubbleSort(byRef Array, low, hi)
Dim t, i, j
For i = hi-1 To low  Step -1
    
For j = low To i
        
If Array(j) > Array(j+1Then
            t 
= Array(j)
            
Array(j) = Array(j+1)
            
Array(j+1= t
        
End IF
    
Next
Next
End Sub

BubbleSort TestData, 
0, N - 1

For I = 0 To N - 1
Result 
= Result & TestData(I) & VbTab
Next

MsgBox(Result)
原创粉丝点击