1. 程式人生 > 其它 >c# Redis快取的使用和helper類;

c# Redis快取的使用和helper類;

一、題目

請實現一個函式,用來判斷一棵二叉樹是不是對稱的。如果一棵二叉樹和它的映象一樣,那麼它是對稱的

例如,二叉樹 [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)
};