读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以指针方式存储)。
例如如下的先序遍历字符串: ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。
下面的代码:当遍历字符为“#”,“#”表示的是空格,空格字符代表空树, 就可以拿出来。
def stree (num): list_1 = [] for i in num: if i == '#' and len (list_1) != 0: print (list_1.pop (), end=' ') print(list_1)#pop()函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。 else: list_1.append (i) print(list_1) if __name__ == '__main__': while True: try: num = input () stree (num) except: break
刚刚回忆了一下二叉树的遍历,先序遍历和中序遍历可以确定一棵二叉树,推出后序遍历。
本文来自博客园,作者:哈利波特甜,转载请注明原文链接:https://www.cnblogs.com/zmh-980509/p/12513868.html
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步