这几天,我们在队长的带领下,一起由浅入深的学习了:归并算法,快速排序。
归并排序算法思想:
分而治之(divide - conquer);每个递归过程涉及三个步骤
第一, 分解: 把待排序的 n 个元素的序列分解成两个子序列, 每个子序列包括 n/2 个元素.
第二, 治理: 对每个子序列分别调用归并排序MergeSort, 进行递归操作
第三, 合并: 合并两个排好序的子序列,生成排序结果.
快速排序基本思想(以升序排序为例):
1.先从数列中取出一个数作为基准数,记为x。
2.分区过程,将不小于x的数全放到它的右边,不大于x的数全放到它的左边。(这样key的位置左边的没有大于key的,右边的没有小于key的,只需对左右区间排序即可)
3.再对左右区间重复第二步,直到各区间只有一个数
只有掌握了核心思想,才能进一步了解算法的本质内容。这一点,我们团队深有体会。
既然选择学习算法,就一定要有“ 学无止境,勇攀高峰,忠于学习,热爱学习”的思想,才能使自己的技术更上一层楼。
http://www.dxsbao.com/shijian/459431.html 点此复制本页地址