文章目录
- 为什么Mergesort很好转化成循环
- canci
为什么Mergesort很好转化成循环
- quicksort却不好转化呢?
- 快速排序是对冒泡排序的改进。
- 想一下冒泡排序,它把序列分成了两部分,前半部分无序,后半部分升序排列,且后半部分的数都大于前半部的数。
- 快速排序和冒泡排序的一些共同点:
- 都要经历n趟排序
- 每趟排序要经历O(n)次比较
- 都是后半部分元素比前半部大
- 不同
- 冒泡排序的交换操作发生相邻的元素间,
- 一趟排序可以要经过多次交换操作;
- 快速排序的交换操作发生在间隔比较远的两个元素,
- 一趟排序要经过交换操作次数会少些
- 冒泡排序的交换操作发生相邻的元素间,
- 快速排序的非递归实现