學習資料結構和演算法的日常demo樹的基本介紹
從資料儲存方式談起
樹的常用術語
二叉樹基本介紹
二叉樹的遍歷
遍歷步驟
**實現:
public
class
treenode
@override
public string tostring()
';}public
intgetvalue()
public
void
setvalue
(int value)
public treenode getleft()
public
void
setleft
(treenode left)
public treenode getright()
public
void
setright
(treenode right)
// 前序遍歷
public
void
preorder()
// 遞迴右子樹if(
this
.right != null)
}// 中序遍歷
public
void
infixorder()
// 輸出父節點
system.out.
print
(this
+" ");
// 遞迴右子樹if(
this
.right != null)
}// 後序遍歷
public
void
postorder()
// 遞迴右子樹if(
this
.right != null)
// 輸出父節點
system.out.
print
(this
+" ");
}}public
class
binarytree
public
void
setroot
(treenode root)
// 前序遍歷
public
void
preorder()
else
}public
void
infixorder()
else
}public
void
postorder()
else}}
public
class
binarytreedemo
}
前序遍歷:github:資料結構和演算法源**treenode treenode treenode treenode treenode treenode treenode treenode
中序遍歷:
treenode treenode treenode treenode treenode treenode treenode treenode
後序遍歷:
treenode treenode treenode treenode treenode treenode treenode treenode
資料結構之二叉樹
在二叉樹中每個節點最多只能有兩個子節點。即左子節點和有子節點。在二叉樹中最重要的操作應當是遍歷。即按照某一順序訪問二叉樹中的每乙個節點。一般有如下幾種遍歷方法 1 前序遍歷,即先訪問根幾點,然後再訪問左子節點,最後訪問右子節點。2 中序遍歷,即先訪問左子節點,然後再訪問根節點,最後訪問右子節點。3 ...
資料結構之二叉樹
定義 滿足以下條件的就是樹 1.有且僅有乙個特定的稱為根root的結點。2.當n 1時,其餘結點可分為m m 0 個互不相交的有限集,其中每個集合本身又是乙個棵樹,並稱為根的子樹。樹是資料結構中一種常見的資料結構,比如我們排序中常見的二叉樹,紅黑樹等。最常見的是樹形表示法和廣義表表示法。樹的結構示意...
資料結構之二叉樹
來看一下樹的結構 class treenode public treenode string value 首先,為了方便後面看到效果,先手動初始化乙個有4個節點的二叉樹 tree tree new tree treenode root new treenode root treenode node1...