Leetcode 二叉樹水平連線

2021-10-06 13:07:39 字數 625 閱讀 4978

給定乙個二叉樹

struct treelinknode
填充所有節點的next指標,指向它右兄弟節點。如果沒有右兄弟節點,則應該將next指標設定為null。

初始時,所有的next指標都為null

思路一:採用層次遍歷 入佇列順序按照  root->right   root->left順序   每遍歷一層完成從左往右的勾連

void connect(treelinknode *root) 

if(temp->left!=null)

pre=temp;}}

}

思路二:採用遞迴方式   每當遇到乙個節點root   完成其左右孩子的next指標的賦值

即:root->left->next=root->right

root->right->next=root->next->left

注意判斷指標為null情況

void connect(treelinknode *root)

leetcode 二叉樹 對稱二叉樹

給定乙個二叉樹,檢查它是否是映象對稱的。例如,二叉樹 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 (二叉樹)反轉二叉樹

遞迴交換每乙個節點的左右子樹,重點在於訪問每乙個節點,然後交換左右子樹 definition for a binary tree node.struct treenode struct treenode inverttree struct treenode root 由於至少要講每乙個節點都訪問一次...

LeetCode之映象二叉樹(簡單 二叉樹)

問題描述 給定乙個二叉樹,檢查它是否是映象對稱的。例如,二叉樹 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說明 如果你可以運用遞迴和迭代兩種方法解決這個問題,會很加分。遞迴 definit...