二叉樹簡單題

2021-10-08 18:05:30 字數 733 閱讀 4341

二叉樹資料結構treenode可用來表示單向鍊錶(其中left置空,right為下乙個鍊錶節點)。實現乙個方法,把二叉搜尋樹轉換為單向鍊錶,要求依然符合二叉搜尋樹的性質,轉換操作應是原址的,也就是在原始的二叉搜尋樹上直接修改。

返回轉換後的單向鍊錶的頭節點。

題解:使用中序遍歷,記錄前乙個結點,遍歷到每個節點時,將left置空,將前乙個節點的right指向當前節點。二叉搜尋樹中序遍歷最後乙個節點的right必然為空

/**

* definition for a binary tree node.

* struct treenode

* };

*/class

solution

~solution()

void

inorder

(treenode* root)

inorder

(root-

>left)

; root-

>left =

null;if

(pre-

>right != root)

pre = root;

inorder

(root-

>right);}

treenode*

convertbinode

(treenode* root)

};

二叉樹(簡單思維題)

如上圖所示,由正整數1,2,3 組成了一顆二叉樹。我們已知這個二樹的最後乙個結點是n。現在的問題是,結點m所在的子樹中一共包括多少個結點。比如,n 12,m 3那麼上圖中的結點13,14,15以及後面的結點 都是不存在的,結點m所在子樹中包括的結點有3,6,7,12,因此結點m的所在子樹中共有4個結...

(二叉樹提高題)還原二叉樹

給定一棵二叉樹的先序遍歷序列和中序遍歷序列,要求計算該二叉樹的高度。輸入格式 輸入首先給出正整數n 50 為樹中結點總數。下面兩行先後給出先序和中序遍歷序列,均是長度為n的不包含重複英文本母 區別大小寫 的字串。輸出格式 輸出為乙個整數,即該二叉樹的高度。輸入樣例 9 abdfghiec fdhgi...

簡單二叉樹

algorithm.cpp 定義控制台應用程式的入口點。include stdafx.h include define d left 0 define d right 1 template struct bnode bnode plnode 左子樹 bnode prnode 右子樹 t pvalue...