LeetCode 101 對稱二叉樹

2021-09-27 10:34:51 字數 876 閱讀 8142

給定乙個二叉樹,檢查它是否是映象對稱的。

例如,二叉樹 [1,2,2,3,4,4,3] 是對稱的。

1/ \

2   2

/ \ / \

3  4 4  3

但是下面這個 [1,2,2,null,3,null,3] 則不是映象對稱的:

1/ \

2   2

\   \

3    3

說明:如果你可以運用遞迴和迭代兩種方法解決這個問題,會很加分。

思路:參考按層遍歷,需要乙個額外的vector儲存每一層,每壓入一層資料,就進行一次判斷,不滿足直接退出。滿足的話,清空,繼續儲存下一行。需要額外處理的是空的情況。時間複雜度o(n),空間複雜度o(n)。以下**採用迭代實現。

/**

* definition for a binary tree node.

* struct treenode

* };

*/class solution

else

temp.push_back(-1);

if(n->right != null)

else

temp.push_back(-1);

--count;

}if(temp.size() == 0) break;

int longth = (temp.size() - 1);

int start = 0;

while(start < longth)

}return true;}};

LeetCode 101 對稱二叉樹

給定乙個二叉樹,檢查它是否是它自己的映象 即,圍繞它的中心對稱 例如,這個二叉樹 1,2,2,3,4,4,3 是對稱的。1 2 2 3 4 4 3 但是下面這個 1,2,2,null,3,null,3 則不是 1 2 2 3 3 說明 如果你可以遞迴地和迭代地解決它就獎勵你點數。建立乙個映象的樹,然...

LeetCode(101) 對稱二叉樹

給定乙個二叉樹,檢查它是否是映象對稱的。例如,二叉樹 1,2,2,3,4,4,3 是對稱的。1 2 2 3 4 4 3但是下面這個 1,2,2,null,3,null,3 則不是映象對稱的 1 2 2 3 3說明 如果你可以運用遞迴和迭代兩種方法解決這個問題,會很加分。這道題也是劍指offer上的2...

leetcode 101 對稱二叉樹

給定乙個二叉樹,檢查它是否是映象對稱的。例如,二叉樹 1,2,2,3,4,4,3 是對稱的。1 2 2 3 4 4 3但是下面這個 1,2,2,null,3,null,3 則不是映象對稱的 1 2 2 3 3思路 如果同時滿足下面的條件,兩個樹互為映象 它們的兩個根結點具有相同的值。每個樹的右子樹都...