Lintcode 將二叉樹拆成鍊錶

2022-06-22 17:39:11 字數 864 閱讀 2808

不要忘記將左兒子標記為 null,否則你可能會得到空間溢位或是時間溢位。

yes樣例

1

\1 2

/ \ \

2 5 => 3

/ \ \ \

3 4 6 4\5

\6

思路:採用遞迴的方法,按照先序遍歷,將節點存放起來,放在乙個容器中;

然後新建乙個頭結點指標,遍歷容器中的節點,依次將節點連線成乙個鍊錶。

但是,要注意將左兒子標記為null;

/**

* definition of treenode:

* class treenode

* }*/class solution

vec.push_back(root);

if(root->left!=null)

if(root->right!=null)

return vec;

}void flatten(treenode *root)

node(root,vec);

root=new treenode();//建立新的頭結點指標;

for(int i=0;ileft=null;

root->right=vec[i];

root=root->right;}}

};

LintCode 將二叉樹拆成鍊錶

題目描述 將一棵二叉樹按照前序遍歷拆解成為乙個假鍊錶。所謂的假煉表是說,用二叉樹的 right 指標,來表示鍊錶中的 next 指標。注意事項 不要忘記將左兒子標記為 null,否則你可能會得到空間溢位或是時間溢位。您在真實的面試中是否遇到過這個題?yes 樣例 1 1 2 2 5 3 3 4 6 ...

lintcode 將二叉樹拆成鍊錶

1 問題描述 將一棵二叉樹按照前序遍歷拆解成為乙個假鍊錶。所謂的假煉表是說,用二叉樹的 right 指標,來表示鍊錶中的 next 指標。樣例 1 1 2 2 5 3 3 4 6 4 5 6 2 解題思路 就是將一棵二叉樹按照前序遍歷然後存到一棵樹裡,這棵樹的特點就是右斜樹,所有節點的左子樹都是nu...

lintcode練習 453 將二叉樹拆成鍊錶

將一棵二叉樹按照前序遍歷拆解成為乙個假鍊錶。所謂的假煉表是說,用二叉樹的 right 指標,來表示鍊錶中的 next 指標。1 1 2 2 5 3 3 4 6 4 5 6不使用額外的空間耗費。不要忘記將左兒子標記為 null,否則你可能會得到空間溢位或是時間溢位。分析 本題採用遞迴的方法解決,關鍵是...