時間限制:1秒 空間限制:32768k 熱度指數:214123
本題知識點: 樹
請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。
emmm,這題剛看的時候想的是把樹遍歷兩遍,因為按題意說的樹具有這樣乙個特徵:按層次列印和按之字型列印,會發現的出的陣列是一樣的。但這樣空間消耗會很大,需要用到輔助棧,佇列,陣列。。。
討論區的方案是這樣的對稱樹結構有這樣乙個規律:左子樹的右節點=右子樹的左節點。採用遞迴(或者棧),進行判斷。應該說這題首先要發現規律,發現這個規律就很好寫了。
/*
struct treenode
};*/
class solution
bool check(treenode* p1, treenode* p2)
};
劍指Offer 二叉樹 對稱的二叉樹
含有兩道題,都從樹的遞迴入手 請完成乙個函式,輸入乙個二叉樹,該函式輸出它的映象。解題思路 映象翻 只需要遍歷二叉樹,每次訪問乙個結點時,交換其左右子樹。實現 definition for a binary tree node.class treenode def init self,x self....
劍指offer 對稱的二叉樹
請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。思路 複製一顆二叉樹,在該二叉樹的基礎上求得二叉樹的映象,同時遍歷兩顆二叉樹,判斷每乙個節點是否相同。public class solution private treenode copy ...
劍指offer 對稱的二叉樹
請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。遞迴 coding utf 8 class treenode def init self,x self.val x self.left none self.right none class ...