3 1 列印二叉樹邊界節點 II

2021-10-22 22:30:04 字數 1435 閱讀 2312

給定一棵二叉樹的頭節點 head,按照如下兩種標準分別實現二叉樹邊界節點的逆時針列印。

標準:

例如,如圖 3-2 所示的樹。

按標準的列印結果為:

1,2,4,7,13,14,15,16,10,6,3
class

node

:def

__init___

(self, data)

: self.value = data

self.right =

none

self.left =

none

defprintedge

(head: node)

:if head is

none

:return

print

(head.value,

" ")

if head.left is

notnone

and head.right is

notnone

: printleftedge(head.left,

true

) printrightedge(head.right,

true

)else

: printedge(head.left if head.left is

notnone

else head.right)

defprintleftedge

(h, _print)

:if _print or

(h.left is

none

and h.right is

none):

print

(h.value,

" ")

printleftedge(h.left, _print)

printleftedge(h.right, _print and

(true

if head.left is

none

else

false))

defprintrightedge

(h, _print)

: printrightedge(h.left, _print and

(true

if head.right is

none

else

false

) printrightedge(h.right, _print)

if _print or

(h.left is

none

and h.right is

none):

print

(h.value,

" ")

3 2 列印二叉樹的邊界節點 I

給定一棵二叉樹的頭節點 head,按照如下兩種標準分別實現二叉樹邊界節點的逆時針列印。標準 例如,如圖 3 2 所示的樹。按標準1的列印結果為 1,2,4,7,11,13,14,15,16,12,10,6,3class node def init self,data self.right none ...

列印二叉樹邊界節點

class treenode def init self,val,left none right none self.val val self.left left self.right right defis leaf self return self.left is none and self.r...

二叉樹問題 列印二叉樹的邊界節點

問題 給定一棵二叉樹的頭節點,按照如下兩種標準分別實現二叉樹邊界節點的逆時針列印。標準一 1.頭節點為邊界節點 2.葉節點為邊界節點 3.如果節點在其所在層中的最左邊或最右邊,那麼也是邊界節點標準二 1.頭節點為邊界節點 2.葉節點為邊界節點 3.樹左邊界延伸下去的路徑為邊界節點 4.樹右邊界延伸下...