排序算法
Small Fly Fly
我是渣渣
展开
-
计数算法
计数排序是一个非基于比较的排序算法,该算法于1954年由 Harold H. Seward 提出。它的优势在于在对一定范围内的整数排序时,它的复杂度为Ο(n+k)(其中k是整数的范围),快于任何比较排序算法。 [1-2] 当然这是一种牺牲空间换取时间的做法,而且当O(k)>O(n*log(n))的时候其效率反而不如基于比较的排序(基于比较的排序的时间复杂度在理论上的下限是O(n*log(n...原创 2019-02-18 10:08:07 · 964 阅读 · 0 评论 -
算法一:面试技巧
本文内容来自视频教程啊, 我是把他给打下来提供以后参考 算法面试不是高考,把这个过程看作是和面试官一起探讨一个问题的解决方案。对于问题的细节和应用环境,可以和面试官沟通,沟通中不断的给,模型提出假设,深入到模型中去,不要把面试当作是考试。当遇到一个很难的维妮塔,对你的竞争对手来说,也是难的 对一组数据进行排序:首选的是快速排序算法,但是在实际的项目中,很多时候我们根据应用场景应该有很多选...原创 2019-02-18 11:22:14 · 436 阅读 · 0 评论 -
算法二:算法中的时间复杂度
1:到底什么是Big O ,这里是指算法执行的上界, 我们知道归并排序的算法时间发咋都是O(nlogn)的,但是我们可以找到一个常数,使得n logn * a <b* n ^2 的所以我们也可以说 算法复杂度是 O(n ^ 2) 但是业界我们通常使用O表示算法执行的最低的上界,所以我们说 归并排序 是n logn 的 当数据规模不断增大时,则常量的影响时间复杂度越来越小,各种算法的...原创 2019-02-18 18:16:52 · 276 阅读 · 0 评论 -
算法三:数据规模的概念和空间复杂度,常见复杂度例题分析
文中 红色标记的为重点非常有用的东西,一定要牢记 空间复杂度: 递归的调用时有空间代价的:例如下面的是:递归调用深度是n级别的 常见复杂度分析: 选择排序 二分查找 这里的 reverse 函数中交换了多少次与s有多少位有关,即位数除以2,s的位数由于循环的次数有关,循环次数就是 O(logn),所以为log n / 2, 所以时间复杂都是log n...原创 2019-02-20 16:11:44 · 3347 阅读 · 0 评论