冒泡排序法就是重复的遍历要排序的元素列,依次比较两个相邻的元素,如果顺序不符合我们的排序要求,就依靠中间变量将他们交换过来。这个过程重复的进行,直到没有需要交换的元素,说明排序已经完成。
原理:以对22,20,30,6按照从小到大顺序排列为例对冒泡排序法进行说明:
第一轮比较:
22,20,30,6 最初
20,22,30,6 比较22和20进行交换
20,22,30,6 比较22和30,不交换
20,22,6,30 比较30和6,进行交换
第一轮比较结束,最大值30已到最后,第二轮只比较前三个数字;
第二轮比较:
20,22,6,30 第一轮比较结果
20,22,6,30 比较20和22,不交换
20,6,22,30 比较22和6,进行交换
第二轮比较结束,前三个数字的最大值已到最后,第三轮只比较前两个数字;
第三轮比较:
20,6,22,30 第二轮比较结果
6,20,22,30 比较20和6,进行交换
排序结束。
由上面可以发现,比较的轮数为数字的个数减一;每轮比较的次数为<