
算法
文章平均质量分 52
墨霁青玉
个人地址:http://www.chunling.online
邮箱:905179839@qq.com
欢迎志同道合程序员+QQ联系,一起交流探讨技术。
展开
-
为什么说递归实现斐波那契数列是一个糟糕的实现?
/***斐波那契数列:第n项等于前两项之和:0/1/1/2/3/5/8/13/21/34/....*//***使用递归实现,并不是最好的方法,因为存在大量的重复计算,例如获取第5个元素*f(5)*=f(4)+f(3)*=f(2)+f(3)+f(1)+f(2)*=f(2)+f(1)+f(2)+f(1)+f(2)*=1+0+1+0+1*=3*其中,f(1)/f(2...原创 2021-06-12 21:24:59 · 383 阅读 · 0 评论 -
详解冒泡排序和快速排序
冒泡排序算法思想:通过两两比较相邻值,如果反序则交换位置,这样较小的元素会冒泡到前面,较大的元素会沉淀至尾部实现思路:(1)设置一个哨兵,默认值为数组长度-1;*(2)通过i++循环两两比较相邻值,反序则交换位置,这样较小的元素会冒泡到前面,较大的元素会沉淀至尾部;一次循环过后,最大的元素会沉淀到尾部,哨兵位置-1*(3)继续i++循环直到哨兵位置为0...原创 2021-06-12 20:31:41 · 1312 阅读 · 0 评论 -
js实现十种排序算法
排序算法平均情况最好情况最坏情况空间复杂度稳定性冒泡排序O(n2)O(n)O(n2)O(1)稳定快速排序O(nlog2n)O(nlog2n)O(n2)O(log2n)~O(n)不稳定直接插入排序O(n2)O(n)O(n2)O(1)稳定希尔排序O(nlog2n)~O(n2)O(n1.3)O(n2)O(1)不稳定简单选择排序O(n2)O(n2)O(n2)O(1)不稳定堆排序O(nlog2n)原创 2017-09-26 17:39:35 · 362 阅读 · 0 评论