【算法思想】
以升序为例:

(1)初始状态,有序区包含0个元素,无序区包含所有元素
(2)顺序扫描无序区,找出无序区中的最小数
(3)将找到的最小数与无序区的首元素(位于有序区末端)进行交换
(4)有序区+1,无序区-1
(5)重复(2)(3)(4),直到无序区只包含1个元素时停止
【算法实例】
数据89、15、24、61、23,进行选择排序的过程如下:

VB程序:
For i = 1 To n-1
k = i
For j = i+1 To n
If a(j) < a(k) Then k = j
Next j
If i<>k Then
t = a(i) : a(i) = a(k) : a(k) = t
End If
Next i
网友评论