算法
一洼世界
这个作者很懒,什么都没留下…
展开
-
算法--Java代码实现快速排序以及三路划分
一般的快速排序思路: 1.一般选取最右边的值为pivot 2.从左端开始扫描,直到找到大于pivot,右端开始扫描,直到小于pivot,再交换。 3.继续执行2,直到左指针不小于右指针,最后在减缓左元素和pivot 4.在左右两边重复上面过程,直至元素个数为0或者1一般的快速排序,无法解决和pivot大量重复的情况,这里就需要用到了三路划分。三路划分快速排序:平均时间复杂度O(NlgN)原创 2017-06-15 16:09:43 · 905 阅读 · 0 评论 -
【推荐】时间复杂度和空间复杂度计算
做开发也好久了,虽然做的是Android,数据结构算法还是大学时候的程度,也有必要抽时间重新拿起课本了。看了几篇关于时间和空间复杂度的计算博客,下面的博客还是浅显易懂的,推荐给大家如何计算算法的时间复杂度 大O记法的实践算法的空间复杂度 时间与空间复杂度相互影响算法的最坏情况与平均情况 复杂度就要看最坏情况原创 2017-09-09 23:51:45 · 189 阅读 · 0 评论