选择排序(SelectionSort)是一种简单直观的排序算法。它的工作原理如下:首先在未排序序列中找到最小元素,存放到排序序列的起始位置,然后再从剩余未排月字元素中继续寻找最小元素,然后放到排序序列末尾。依此类推,直到所有元素均排序完毕。
代码如下:
Private Sub Command5_Click()
Dim i As Integer
Dim j As Integer
Dim arr() As String '定义数组
Dim t As Integer '用于展示数组元素
Dim tmp As String '调整数组元素位置临时容器
Dim pivotkey As String
arr() = Split(Me.Text0, ",")
Me.Text2 = ""
Me.Text2 = Me.Text2 & "[初始数组元素]: "
For t = 0 To UBound(arr)
Me.Text2 = Me.Text2 & arr(t) & " "
Next t
Me.Text2 = Me.Text2 & vbCrLf & vbCrLf
For i = LBound(arr) To UBound(arr)
k = i
For j = i + 1 To UBound(arr)
If Val(arr(j)) < Val(arr(k)) Then
k = j
End If
Next j
If k <> i Then
pivotkey = arr(i)
arr(i) = arr(k)
arr(k) = pivotkey
End If
'显示第几次排序结果
Me.Text2 = Me.Text2 & i + 1 & "次排序结果: "
For t = 0 To UBound(arr)
Me.Text2 = Me.Text2 & arr(t) & " "
Next t
Me.Text2 = Me.Text2 & vbCrLf
Next i
End Sub
附 件:
点击下载此附件
图 示: