排序算法
cactus233
这个作者很懒,什么都没留下…
展开
-
排序算法之归并排序的理解与实现
归并排序,是分治算法的一个经典应用, 归并排序,利用分治的思想,将一个数组先一半一半分解为规模更小的数组,直至规模为1,然后小数组进行排序,在将已经排序的小数组逐渐合并为大数组,直至最终合并为原数组大小的已排好序的新数组。 实现代码如下(c++)#include<iostream> #include<cmath> #include<vector> using namespace std;// s原创 2017-06-08 12:21:17 · 359 阅读 · 0 评论 -
排序算法之快速排序的理解与实现
快速排序复杂度等级为O(NlogN),采用分治的算法思想, 1、一个待排序数组nums,从中随机选择一个元素作为基准,这里笔者选择第一个元素为base, 2、这时nums[0]被挖了一个坑,然后从数组的末尾j=N-1开始遍历,直到j处的元素小于base,将该元素赋给nums[0], 3、然后i=1开始遍历直至i处得元素大于base值时,将其填到nums[j]的坑中, 4、这样循环往复2、3,原创 2017-06-08 23:47:35 · 236 阅读 · 0 评论