一维数组的典型应用---排序
排序:把一批杂乱无章的数据按照升序或降序排列,称~。
为什么要排序:提高数据检索效率
排序方法:选择排序、冒泡排序、插入排序、希尔排序、堆排序等。
假设n个数据存放在a数组中,要实现升序排列。
一、选择排序
思想:
(1)i=0
(2)让a[i]与a[i+1]..a[n-1]比一遍,发现比a[i]更小的则交换 (a[i]是i..n-1 范围中最小的一个)
(3)i++,重复(2),直到只剩下1个元素
依次确定:a[0] a[1] a[2]......a[n-2] (共n-1个数)
只剩:a[n-1]
算法实现:
54 13 27 43 87 46 33
54
i=0 13 54 27 43 87 46 33 (确定0位置上的数a[0])
i=1 13 27 54 43 87 46 33 (确定1位置上的数a[1])
43
i=2 13 27 33 54 87 46 43 (a[2])
54
i=3 13 27 33 43 87 54 46 (a[3])
i=4 13 27 33 43 46 87 54 (a[4])
i=5 13 27 33 43 46 54 87 (a[5])
[1]
[2]
[3]
[4]
下一页