天天看點

什麼是二叉樹?

我們以

BFS

順序表示二叉樹。

例如:

什麼是二叉樹?

BFS 順序或上面的二叉樹為

[1,2,3]

,是以該樹将被序列化為

{1,2,3}

對于:

什麼是二叉樹?

兩棵樹的 BFS 順序相同都為:[1,2]。為了區分它們,我們使用

{1,2,#}

代表第一個,

{1,#,2}

代表第二個。 #代表空節點。對于{1,2,#},我們可以通過忽略

{1,2}

尾部的空節點來使其更短。

讓我們來看一個更大的二叉樹:

什麼是二叉樹?

它将被序列化為

{1,2,3,4,5,#,6,#,#,7,8}

1:根

2:1的左子樹

3:1的右子樹

4:2的左子樹

5:2的右子樹

#:3的左子樹

6:3的右子樹

#:4的左子樹

#:4的右子樹

7:5的左子樹

8:5的右子樹

因為6、7、8位于bfs順序的末尾,它們的左子樹和右子樹都為空,是以可以忽略。

繼續閱讀