LeetCode
wyplj_sir
只是总结。
展开
-
二叉树任意两个节点间的最大距离(Java,LeetCode 543二叉树的直径 递归)
文章目录题目示例代码题目给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点示例给定二叉树: 1 / \ 2 3 / \ 4 5 返回 3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。注意:两结点之间的路径长度是以它们之间边的数目表示。代码思路:使用递归的方法,用一个全局变量max保存最大距离(一开始没写出来是因为把自己绕进原创 2020-09-27 19:15:18 · 3392 阅读 · 0 评论 -
LeetCode 1547:切棍子的最小成本
文章目录题目示例示例1示例2代码题目有一根长度为 n 个单位的木棍,棍上从 0 到 n 标记了若干位置。例如,长度为 6 的棍子可以标记如下:给你一个整数数组 cuts ,其中 cuts[i] 表示你需要将棍子切开的位置。你可以按顺序完成切割,也可以根据需要更改切割的顺序。每次切割的成本都是当前要切割的棍子的长度,切棍子的总成本是历次切割成本的总和。对棍子进行切割将会把一根木棍分成两根较小的木棍(这两根木棍的长度和就是切割前木棍的长度)。请参阅第一个示例以获得更直观的解释。返回切棍子的 最小原创 2020-09-23 20:48:10 · 592 阅读 · 0 评论 -
计算二叉树任意两个节点之间的最短路径长度(Java)
题目计算二叉树任意两个节点之间的最短路径长度例如:在这个二叉树中,计算节点7和节点3的最短路径长度输出4(7—4—2—1—3)思路先找出两个节点的最近公共祖先(在上面的例子中,节点7和节点3的最近公共祖先就是节点1)分别求出两个节点到最近公共祖先的路径长度(节点7到节点1的长度为3,节点3到节点1的长度为1)求出两个节点的路径长度(3+1=4)代码package Tests;import java.util.LinkedList;/** * @author zj原创 2020-05-12 21:37:23 · 5594 阅读 · 0 评论 -
Leetcode 面试题08.11:硬币(动态规划)
题目硬币。给定数量不限的硬币,币值为25分、10分、5分和1分,编写代码计算n分有几种表示法。(结果可能会很大,你需要将结果模上1000000007)示例输入: n = 10输出:4解释: 有四种方式可以凑成总金额:10=1010=5+510=5+1+1+1+1+110=1+1+1+1+1+1+1+1+1+1思路这一题很容易想到要动态规划,然后……我就觉得很难了,s...原创 2020-04-24 18:11:27 · 273 阅读 · 0 评论 -
LeetCode面试题13:机器人的运行范围
题目描述地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3+5+3+7=18。但它不能进入方格 [35, 38],因为3+5+3+8=19。请问该机器人...原创 2020-04-09 16:13:10 · 175 阅读 · 0 评论 -
Leetcode 42:接雨水(单调栈)
题目:给定n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。感谢 Marcos 贡献此图。示例:输入: [0,1,0,2,1,0,1,3,2,1,2,1]输出: 6答案:看了这个答案才...原创 2020-04-05 16:49:08 · 163 阅读 · 0 评论 -
剑指offer:顺时针打印矩阵(leetcode 54 螺旋矩阵)
题目:给定一个包含m x n个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例1:输入:[[ 1, 2, 3 ],[ 4, 5, 6 ],[ 7, 8, 9 ]]输出: [1,2,3,6,9,8,7,4,5]示例2:输入:[ [1, 2, 3, 4], [5, 6, 7, 8], [9,10,11,12]]...原创 2020-09-05 15:27:28 · 219 阅读 · 0 评论