3、1,此时,整个序列已全部有序。2.2.3 起泡排序 起泡排序的思想是:两两比较相邻的元素,如果反序,则交换次序,直到没有反序的元素为止。 在此思想指导下①首先将待排序元素划分为有序区和无序区,初始状态有序区为空,无序区所有待排序素; ②对无序区从前向后依次将相邻元素关键码进行比较,若反序,则交换 ③重复执行②直到无序区中没有元素。 2.2.4快速排序算法 2,2,4,1一趟快速排序算法自然语言描述如下 ① 选取区间第一个元素作为轴值 ② 读取区间首尾坐标,并将其左右侧待比较元素 ③ 右侧扫描:从后向前找
4、到第一个比轴值小的元素,和左侧待比较元素交换(左侧第一个带比较元素为轴值) ④ 左侧扫描:从前向后找到第一个比轴值大的元素,和右侧待比较元素交换 ⑤ 重复②③,直到左右两侧带比较元素的坐标相等 其c++描述如下2.2.4.2完整的快速排序算法如下:2.2.5选择排序算法 选择排序自然语言描述如下: ① 在r[1]~r[n]待排序元素序列中选出最小记录,将其与第一个元素r[n]交换 ② 在r[2]~r[n]待排序元素序列中选出最小记录,将其与第一个元素r[i]交换 ………… ③ 直至r[n-1]~r[n] C++描述如下: 2.2.6堆排序 2.2.6.1堆的