Twitter 創始人傑克多西首條 NFT 推文去年 290 萬美元成交,現在只值 277 美元
阿新 • • 發佈:2022-04-15
一、題目
請實現一個函式,用來判斷一棵二叉樹是不是對稱的。如果一棵二叉樹和它的映象一樣,那麼它是對稱的
例如,二叉樹 [1,2,2,3,4,4,3] 是對稱的。
二、思路
1.首先判斷根節點是否為空,空二叉樹是對稱的
2.根節點不為空,定義一個檢測函式
{
檢測左右子樹是否為空的兩種情況 :都為空、其中一個是空
當左右子樹都不為空,需要遞迴遍歷其他的左右子樹還有節點的值是否相等
}
三、程式實現
var isSymmetric = function(root) { //空二叉樹是對稱的 if(!root){ return true; } //檢測函式 var check=(node1,node2)=>{ //左右子樹都為空 if(!node1&&!node2){ return true; } //其中有一個是空 if(!node1||!node2){ return false; } //如果左右子樹都不為空,需要遞迴比較左右子樹、當前值是否相等 return node1.val===node2.val&&check(node1.left,node2.right)&&check(node1.right,node2.left) } return check(root.left,root.right) };