File tree Expand file tree Collapse file tree 1 file changed +9
-7
lines changed Expand file tree Collapse file tree 1 file changed +9
-7
lines changed Original file line number Diff line number Diff line change @@ -74,16 +74,16 @@ def preorder_trav_use_stack(self, subtree):
7474 while not s .empty ():
7575 peek = s .pop ()
7676 print (peek .data ) # 注意这里我用了 print,你可以用 yield 产出值然后在调用的地方转成 list
77- if subtree . left :
78- s .push (subtree . left )
79- if subtree . right :
80- s .push (subtree . right )
77+ if peek . right :
78+ s .push (peek . right )
79+ if peek . left :
80+ s .push (peek . left )
8181
8282 def inorder_trav (self , subtree ):
8383 if subtree is not None :
84- self .preorder_trav (subtree .left )
84+ self .inorder_trav (subtree .left )
8585 print (subtree .data )
86- self .preorder_trav (subtree .right )
86+ self .inorder_trav (subtree .right )
8787
8888 def reverse (self , subtree ):
8989 if subtree is not None :
@@ -133,8 +133,10 @@ def layer_trav_use_queue(self, subtree):
133133btree = BinTree .build_from (node_list )
134134print ('====先序遍历=====' )
135135btree .preorder_trav (btree .root )
136+
136137print ('====使用 stack 实现先序遍历=====' )
137- btree .preorder_trav (btree .root )
138+ btree .preorder_trav_use_stack (btree .root )
139+
138140print ('====层序遍历=====' )
139141btree .layer_trav (btree .root )
140142print ('====用队列层序遍历=====' )
You can’t perform that action at this time.
0 commit comments