【LeetCode(Java) - 298】二叉樹最長連續序列
1、題目描述
2、解題思路
簡單的 DFS 思路:
1、定義要給全域性變數 maxLength;
2、設計 dfs 函式,功能為:更新 maxLength 變數,函式內部有一個區域性變數 length,如果當前節點比父結點大 1,則 length++,否則 lenfth 置為 1,比較 maxLength 和 length,更新為最大值。
3、解題程式碼
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
class Solution {
private int maxLength = 0;
public int longestConsecutive(TreeNode root) {
dfs(root, null, 0);
return maxLength;
}
private void dfs(TreeNode p, TreeNode parent, int length) {
if (p == null) return;
length = (parent != null && p.val == parent.val + 1) ? length + 1 : 1;
maxLength = Math.max(maxLength, length);
dfs(p.left, p, length);
dfs(p.right, p, length);
}
}
相關文章
- LeetCode-128-最長連續序列LeetCode
- 線性dp:LeetCode674. 最長連續遞增序列LeetCode
- 【LeetCode動態規劃#14】子序列系列題(最長遞增子序列、最長連續遞增序列、最長重複子陣列、最長公共子序列)LeetCode動態規劃陣列
- 最長迴文子序列(不連續) 可輸出迴文序列
- 習題3.4 最長連續遞增子序列 (20分)
- Day 45 | 300.最長遞增子序列 、674. 最長連續遞增序列 、718. 最長重複子陣列陣列
- Leetcode-300. 最長遞增子序列LeetCode
- LeetCode300.最長遞增子序列LeetCode
- LeetCode 1143.最長公共子序列LeetCode
- [leetcode 中等 動態規劃]673. 最長遞增子序列的個數 [leetcode 簡單 滑動視窗] 674. 最長連續遞增序列 [筆試]陣列的遞增子陣列序列LeetCode動態規劃筆試陣列
- 最長公共子序列(JAVA)Java
- LeetCode516. 最長迴文子序列LeetCode
- leetcode 617.合併二叉樹 JavaLeetCode二叉樹Java
- leetcode力扣 300. 最長遞增子序列LeetCode力扣
- Leetcode 300 最長遞增子序列(LIS板題)LeetCode
- 【修訂版】Leetcode 300 最長遞增子序列LeetCode
- LeetCode 297. Serialize and Deserialize Binary Tree 二叉樹序列化反序列化LeetCode二叉樹
- 最優二叉樹(哈夫曼樹)Java實現二叉樹Java
- java 實現 最長公共子序列Java
- 最長遞增子序列-Java 實現Java
- 【leetcode】53. Maximum Subarray 連續子序列的最大和LeetCode
- 序列化二叉樹二叉樹
- LeetCode-114-二叉樹展開為連結串列LeetCode二叉樹
- 程式碼隨想錄演算法訓練營 | 300.最長遞增子序列,674. 最長連續遞增序列,718. 最長重複子陣列演算法陣列
- 【LeetCode-二叉樹】二叉樹前序遍歷LeetCode二叉樹
- 線性dp:LeetCode516 .最長迴文子序列LeetCode
- LeetCode 對稱二叉樹LeetCode二叉樹
- 判斷序列是否是二叉搜尋樹的後續遍歷
- LeetCode 109——有序連結串列轉化二叉搜尋樹LeetCode
- 滿二叉樹、完全二叉樹、平衡二叉樹、二叉搜尋樹(二叉查詢樹)和最優二叉樹二叉樹
- Leetcode226.翻轉二叉樹 Invert Binary Tree(Java)LeetCode二叉樹Java
- LeetCode 105. 從前序與中序遍歷序列構造二叉樹LeetCode二叉樹
- LeetCode-105-從前序與中序遍歷序列構造二叉樹LeetCode二叉樹
- 程式碼隨想錄演算法訓練營第49天 | 300.最長遞增子序列 、674. 最長連續遞增序列 、718. 最長重複子陣列演算法陣列
- LeetCode系列之「有序連結串列轉換二叉搜尋樹」LeetCode
- LeetCode-109-有序連結串列轉換二叉搜尋樹LeetCode
- LeetCode-110-平衡二叉樹LeetCode二叉樹
- Java二叉樹Java二叉樹