
题目 思路 由于搜索树的中序遍历就是按节点元素从小到大的方式输出的,所以只需通过中序遍历得到遍历的结果集合。然后再从结果集中返回第K个元素即可。 递归方式 public int solution(TreeNode root, int k) { List<Integer> vals = …

题目 思路 由于搜索树的中序遍历就是按节点元素从小到大的方式输出的,所以只需通过中序遍历得到遍历的结果集合。然后再从结果集中返回第K个元素即可。 递归方式 public int solution(TreeNode root, int k) { List<Integer> vals = …

思路 动态规划: 根据跟定条件可以看出,这道题其实就是一个m*n的二维表格。对于给定的位置p(x,y),能到达p的所有可能情况有 从上往下p1(x - 1, y) -> p 从左往右p2(x, y -1) -> p 那么达到p的所有可能路径是paths(p1) + paths(p2); …

题目 给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器。 示例 …

问题 解题 贪心算法: 从数组第一个元素开始,第x个元素的和f(x)依赖f(x-1)的和的情况。如果f(x-1)<0,那么f(x)抛弃f(x-1)的值,使得 f(x)=nums[x]。否则,f(x) = nums + f(x - 1)。即: 如下图:输入数组[-2, 1, -3, 4, …