算法
文章平均质量分 81
余让天
这个作者很懒,什么都没留下…
展开
-
各种算法的稳定性与时间复杂度小结
选择排序、快速排序、希尔排序、堆排序不是稳定的排序算法, 冒泡排序、插入排序、归并排序和基数排序是稳定的排序算法。 冒泡法: 这是最原始,也是众所周知的最慢的算法了。他的名字的由来因为它的工作看来象是冒泡: 复杂度为O(n*n)。当数据为正序,将不会有交换。复杂度为O(0)。 直接插入排序:O(n*n) 选择排序:O(n*n) 快速排序:平均时间复转载 2013-03-07 00:34:14 · 970 阅读 · 0 评论 -
quickSort 的递归与迭代实现
递归实现很直观,无需多说。而迭代如何实现呢? 其实递归的本质是使用系统栈,那么迭代就是使用我们自己申请的栈,迭代的条件就是栈非空,而栈里放的是需要进行排序的数组或子数组的head以及长度len。 今天在网上看了一些代码,不得不吐槽一些人的代码习惯,各种 i j k m n 等临时变量, 不懂得进行函数、功能拆分,不写注释,代码挤成一坨。 下面贴上我自己的,虽然原创 2013-03-27 01:53:50 · 1191 阅读 · 0 评论