91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

LeetCode中如何解決相同的樹問題

發布時間:2022-01-17 11:51:31 來源:億速云 閱讀:100 作者:小新 欄目:大數據

這篇文章將為大家詳細講解有關LeetCode中如何解決相同的樹問題,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

 

題目鏈接

https://leetcode-cn.com/problems/same-tree/

 

題目描述

給定兩個二叉樹,編寫一個函數來檢驗它們是否相同。

如果兩個樹在結構上相同,并且節點具有相同的值,則認為它們是相同的。

示例 1:

輸入:       1         1
         / \       / \
        2   3     2   3

       [1,2,3],   [1,2,3]

輸出: true
 

示例 2:

輸入:      1          1
         /           \
        2             2

       [1,2],     [1,null,2]

輸出: false
 

示例 3:

輸入:       1         1
         / \       / \
        2   1     1   2

       [1,2,1],   [1,1,2]

輸出: false
   

解題方案

 

思路

  • 標簽:深度優先遍歷

  • 終止條件與返回值:

    • 當兩棵樹的當前節點都為null時返回true

    • 當其中一個為null另一個不為null時返回false

    • 當兩個都不為空但是值不相等時,返回false

  • 執行過程:當滿足終止條件時進行返回,不滿足時分別判斷左子樹和右子樹是否相同,其中要注意代碼中的短路效應

  • 時間復雜度:O(n),n為樹的節點個數

 

代碼

  • Java版本

/**
* Definition for a binary tree node.
* public class TreeNode {
*     int val;
*     TreeNode left;
*     TreeNode right;
*     TreeNode(int x) { val = x; }
* }
*/
class Solution {
   public boolean isSameTree(TreeNode p, TreeNode q) {
       if(p == null && q == null)
           return true;
       if(p == null || q == null)
           return false;
       if(p.val != q.val)
           return false;
       return isSameTree(p.left, q.left) && isSameTree(p.right, q.right);
   }
}
 
  • JavaScript版本

/**
* Definition for a binary tree node.
* function TreeNode(val) {
*     this.val = val;
*     this.left = this.right = null;
* }
*/
/**
* @param {TreeNode} p
* @param {TreeNode} q
* @return {boolean}
*/
var isSameTree = function(p, q) {
   if(p == null && q == null)
       return true;
   if(p == null || q == null)
       return false;
   if(p.val != q.val)
       return false;
   return isSameTree(p.left, q.left) && isSameTree(p.right, q.right);
};
   

畫解

LeetCode中如何解決相同的樹問題

LeetCode中如何解決相同的樹問題

LeetCode中如何解決相同的樹問題

關于“LeetCode中如何解決相同的樹問題”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

张家川| 临武县| 岑巩县| 娄烦县| 株洲县| 花垣县| 长沙市| 金华市| 凉城县| 蓝田县| 云南省| 沂南县| 江华| 缙云县| 富宁县| 依兰县| 扶绥县| 黎城县| 富阳市| 汉寿县| 仁寿县| 乐都县| 玛纳斯县| 余姚市| 太和县| 漳平市| 石棉县| 罗甸县| 石渠县| 吴旗县| 吴川市| 天门市| 启东市| 如皋市| 都安| 江北区| 崇仁县| 集贤县| 涿鹿县| 丁青县| 江西省|