Manacher算法
摘要:/** * Manacher算法 * <p> * 又叫“马拉车”算法,可以在时间复杂度为O(n)的情况下求解一个字符串的最长回文子串长度的问题 */public class Manacher { public static int manacher(String s) { if (s == null
阅读全文
Morris遍历
摘要:/** * Morris遍历:可以将非递归遍历中的空间复杂度降为O(1)。从而实现时间复杂度为O(N),而空间复杂度为O(1)的精妙算法 * <p> * 记作当前节点为cur。 * 如果cur无左孩子,cur向右移动(cur=cur.right) * 如果cur有左孩子,找到cur左子树上最右的节点
阅读全文