Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit c0d0a3c

Browse files
author
wb.xubilin
committed
二叉树 中序遍历
1 parent f5be8a9 commit c0d0a3c

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
from initTree import init_tree_from_list
2+
def inorder_traverse(node,op_func):
3+
4+
if node.left_child != None:
5+
inorder_traverse(node.left_child,op_func)
6+
7+
op_func(node)
8+
9+
if node.right_child != None:
10+
inorder_traverse(node.right_child,op_func)
11+
12+
13+
def inorder_traverse_nonResursion(node,op_func):
14+
stack = []
15+
root = node
16+
while len(stack) != 0 or root != None:
17+
while root != None:
18+
stack.append(root)
19+
root = root.left_child
20+
op_node = stack.pop()
21+
op_func(op_node)
22+
root = op_node.right_child
23+
24+
25+
if __name__ == "__main__":
26+
test_list = range(10)
27+
root_node = init_tree_from_list(test_list)
28+
def visit(node):
29+
print node.value
30+
inorder_traverse_nonResursion(root_node,visit)

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /