力扣
力扣例题答案
<编程路上>
这个作者很懒,什么都没留下…
展开
-
11. 盛最多水的容器(双指针问题)
有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i])。解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。初始化: 双指针 i , j 分列水槽左右两端;输入:[1,8,6,2,5,4,8,3,7]返回值: 返回面积最大值 max 即可;选定两板高度中的短板,向中间收窄一格;循环收窄: 直至双指针相遇时跳出;原创 2022-09-13 19:03:28 · 80 阅读 · 0 评论 -
543. 二叉树的直径
二叉树的直径不一定过根节点,因此需要去搜一遍所有子树(例如以root,root.left, root.right…为根节点的树)对应的直径,取最大值。给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。root的高度 = max {root左子树高度, root右子树高度} + 1。root的直径 = root左子树高度 + root右子树高度。原创 2022-09-13 16:49:00 · 58 阅读 · 0 评论