算法
文章平均质量分 76
jhkj_5154
我是一个小菜鸟...哈哈哈哈
展开
-
归并排序
O(nlogn)级别的排序算法归并排序8 6 2 3 1 5 7 4当我们要排序这一个数组的时候,首先我们把这个数组分成一半,先对左边的排序再对右边的排序。然后在归并起来。当我们对左边的数组和右边的数字排序的时候,再把左边的和右边的再分成一般,每一个排序再归并…直到一个数值时,本身就是有序的我们不要排序,只要归并就好勒。归并到上一个层级继续归并…直到最后。只要我们能把2个数组归并到...原创 2018-02-26 13:36:47 · 112 阅读 · 0 评论 -
选择排序与插入排序
排序算法O(n*2)这种比较基础,很多时候我们在面临一个问题要从最简单的方法解决,从而优化编码简单,易于实现,是一些简单场景的首选,汇编语言也可以用特殊情况下,简单排序更加有效能延伸更复杂的排序,如希尔排序作为子过程,用于改进更加负载的排序算法 选择排序8,6,2,3,1,5,7,4首先在整个数组找到第一名 1,将1和8交换,1就是最终位置,之后找最小的以此类推具体实现如下template<...原创 2018-02-25 13:42:48 · 420 阅读 · 0 评论 -
外部排序
如何排序10G个元素我们内存没有这么大,我们没办法放进大数组里面有一部分放在数组里面,有一部分放在外面,就是硬盘或者网络上其他节点,就是所谓的外部排序扩展的归并排序我们数据不要分左右两端,我们分很多段每一段给一个节点进行排序,每一段他的数据量我们可以控制小到放在内存里可以放得下那这个节点就可以做普通的排序,快速归并拍出来之后每个节点都是有序序列,每个有序序列都归并节点我们把大数据且分到每一个节点上...原创 2018-03-28 23:35:17 · 183 阅读 · 0 评论 -
快速排序
快速排序被称为20世纪对世界影响最大的算法之一。他能以非常快的速度来完成排序任务。快速排序也是经过长时间的改进优化才被公认的认为是非常优秀的排序算法。快速排序的基本思想: 每次从当前考虑的数组中选择一个元素,这个元素为基点,把这个元素挪到他排好序后应该所处的位置。 例如: 原-> 4 6 2 3 1 5 7 8 现-> 2 3 1 4 6 5...原创 2018-09-02 15:11:20 · 250 阅读 · 0 评论