前两篇文章中介绍了选择排序和插入排序,今天我们继续往下来介绍其他的排序算法,介绍交换排序中的冒泡排序和快速排序。
1、交换排序:冒泡排序
定义:首先将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序,则交换这两个记录的值,然后比较第二个记录和第三个记录的关键字,依此类推直至第n-1个记录和第n个记录的关键字比较过为止。
做法:上述过程称为第一趟冒泡排序。其结果是关键字最大的记录被交换到第n个记录的位置。然后进行第二趟冒泡排序,对前n-1个记录进行同样的操作,其结果是关键字次大的记录被交换到第n-1个记录的位置上。最多进行n-1趟这样的排序,若在某趟冒泡排序过程没有进行相邻位置的元素交换处理,则可结束排序过程。