算法
he_liu
这个作者很懒,什么都没留下…
展开
-
二叉树中的分治法与遍历法
原文首发自 https://www.stdstring.com/2020/02/02/devide-binary-tree/分治法 vs 遍历法拿人口统计作为例子,遍历法与分治法的区别如下:如果使用遍历法,做法如下:人口普查员自己一个人带着一个本子,跑遍全中国挨家挨户的敲门查户口而如果使用分治法,做法如下:国家统计局的老板想要知道全国人口的总数,于是他找来全国各个省的统计局...原创 2020-02-14 17:50:51 · 1177 阅读 · 0 评论 -
二分法
原文首发自https://www.stdstring.com/2020/01/31/er-fen-fa/准备知识基本的二分法该如何写第一个位置,最后一个位置该如何变化Big O,时间复杂度,空间复杂度什么是递归,二分法用递归如何实现内存中的栈空间和堆空间有什么区别什么是 Stack Overflow,什么情况下会造成 Stack Overflow常见的算法时间复杂度...原创 2020-02-14 17:49:19 · 695 阅读 · 0 评论 -
LintCode 605 序列重构
原文首发自https://www.stdstring.com/2020/02/02/LintCode%20605%20%E5%BA%8F%E5%88%97%E9%87%8D%E6%9E%84/题目描述判断是否序列 org 能唯一地由 seqs重构得出. org是一个由从1到n的正整数排列而成的序列,1 ≤ n ≤ 10^4。 重构表示组合成seqs的一个最短的父序列 (意思是,一个最短的序...原创 2020-02-14 17:47:28 · 413 阅读 · 0 评论 -
利用二分法做pow运算--Lintcode428
原文首发自heliuphy的博客题目描述实现 pow(x, n) 。 (n是一个整数)题目分析通过 n 次循环的时间复杂度为 O(n)O(n)O(n) ,而利用二分法可以做到更优。只不过需要注意 n 为负数时的处理。本来想到的是先定义一个函数 positivePow(),用来解决正数乘方的问题,负数的情况只需要取一个倒数就可以了。但是这样无法解决 Integer.MIN_VALUE ...原创 2020-02-14 17:44:19 · 270 阅读 · 0 评论 -
strStr2
strStr2题目描述实现时间复杂度为 O(n + m)的方法 strStr。strStr 返回目标字符串在源字符串中第一次出现的第一个字符的位置. 目标字串的长度为 m , 源字串的长度为 n . 如果目标字串不在源字串中则返回 -1。样例输入:source = "abcdef", target = "bcd"输出:1解释:字符串第一次出现的位置为1。代码public c...原创 2020-02-14 17:41:04 · 204 阅读 · 0 评论