摘要:
算法思想: 对于求数组中第k小的元素的问题,我们已经有很好的常规算法了,这个算法在最好的情况下时间复杂度是O(n),但在最坏的情况下是O(n^2)的。 bfprt算法就是在这个基础上改进的。它通过中位数概念选取最合适的划分值作为划分依据。 常规解法: 我们随机在数组中选择一个数作为划分值(numbe 阅读全文
posted @ 2021-02-13 15:24
γGama
阅读(261)
评论(0)
推荐(0)
摘要:
算法功能 回文字符串的通俗定义是:如果一个字符串正着读或反着读都一样,那么称这个字符串为回文字符串。 Manacher的作用就是在O(N)的时间复杂度下求出以每个位置为回文中心的回文半径。 核心原理是动态规划 【Code】 //处理字符串,为字符串每个字符左右填充符号 public static c 阅读全文
posted @ 2021-02-13 15:06
γGama
阅读(71)
评论(0)
推荐(0)
摘要:
1 阅读全文
posted @ 2021-02-13 14:58
γGama
阅读(41)
评论(0)
推荐(0)
摘要:
morris遍历是二叉树遍历算法的超强进阶算法,跟递归、非递归(栈实现)的空间复杂度,morris遍历可以将非递归遍历中的空间复杂度降为O(1)。从而实现时间复杂度为O(N),而空间复杂度为O(1)的精妙算法。morris遍历利用的是树的叶节点左右孩子为空(树的大量空闲指针),实现空间开销的极限缩减 阅读全文
posted @ 2021-02-13 14:57
γGama
阅读(759)
评论(0)
推荐(0)

浙公网安备 33010602011771号