随笔分类 - leetcode
摘要:package tree; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Stack; /** * 给定一个二叉树,返回它的 后序 遍历。 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [3,2,1] ...
阅读全文
摘要:package DynamicProgramming; /** * 给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 说明:每次只能向下或者向右移动一步。 示例: 输入: [ [1,3,1], [1,5,1], [4,2,1] ] 输出: 7 解释: 因为路径 1→3→1→1→1 的总和最小。 */ pu...
阅读全文
摘要:package Array; public class p807 { /** * Example: Input: grid = [[3,0,8,4],[2,4,5,7],[9,2,6,3],[0,3,1,0]] Output: 35 Explanation: The grid is: [ [3, 0, 8, 4], ...
阅读全文
摘要:没有算法可以将一个长url转为一个短url而不引起冲突,短url所能表示的字符串个数一定少于长url的个数; 真实做法应该是提供一个自增id来标识长url,小型数据可以通过map储存,大型数据可以通过redis等keyi-value型数据库储存
阅读全文
摘要:后序数组的倒序顺序是每一个子树的根节点,在中序数组找到每一个根节点,然后根据它将数组分成左右两部分就得到了左右子树,按照这个定律循环递归求根节点与其左右子树
阅读全文
摘要:利用一维数组(大小为n)queen[n]来代表每行皇后所在位置,这样就能确保每一行只有一个皇后 然后不断尝试是否可放皇后,可放则进入下一行,不可放则尝试下一位置
阅读全文
摘要:求幂集 使用回溯法,主要看集合里每一个元素在与不在链表中,在与不在都会创建一个新的解; List的浅拷贝深拷贝问题 List.add(E e)方法会传入一个对象,实际上存的是该对象的引用,因此即使在add方法执行之后再去改变e的值也会导致存放的e的值改变,所以想要存放不同值的e对象就要在每次add(
阅读全文