Python编程把二叉树打印成多行代码


Posted in Python onJanuary 04, 2018

题目描述

从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。

思路:

1、把每层节点的val值用list存好

2、把每层节点存好:

①计算当层节点的个数,这样就保证下一步每层的结点都被pop光

②然后依次弹出从左到右的每个节点,然后在list中加入该节点对应的左结点、右节点(如果存在的话)

代码如下:

class TreeNode(): 
  def __init__(self,x): 
    self.val = x 
    self.left = None 
    self.right = None 
def function(root): 
  result = [] 
  if not root: 
    return result 
  A = [] 
  A.append(root) 
  while A: 
    temp = [] 
    size = len(A) 
    for Node in A: 
      temp.append(Node.val) 
    result.append(temp) 
    for i in range(size): 
      node = A.pop(0) 
      if node.left: 
        A.append(node.left) 
      if node.right: 
        A.append(node.right) 
  return result

总结

以上就是本文关于Python编程把二叉树打印成多行代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
python常见排序算法基础教程
Apr 13 Python
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
Apr 30 Python
python实现比较文件内容异同
Jun 22 Python
机器学习之KNN算法原理及Python实现方法详解
Jul 09 Python
Python爬虫实现简单的爬取有道翻译功能示例
Jul 13 Python
Flask实现图片的上传、下载及展示示例代码
Aug 03 Python
Python3 单行多行万能正则匹配方法
Jan 07 Python
新手入门Python编程的8个实用建议
Jul 12 Python
如何基于python把文字图片写入word文档
Jul 31 Python
python 爬取小说并下载的示例
Dec 07 Python
使用Python拟合函数曲线
Apr 14 Python
PYTHON基于Pyecharts绘制常见的直角坐标系图表
Apr 28 Python
2018年Python值得关注的开源库、工具和开发者(总结篇)
Jan 04 #Python
Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程
Jan 04 #Python
教你用 Python 实现微信跳一跳(Mac+iOS版)
Jan 04 #Python
基于python实现在excel中读取与生成随机数写入excel中
Jan 04 #Python
python实现简易云音乐播放器
Jan 04 #Python
Python语言描述连续子数组的最大和
Jan 04 #Python
一个月入门Python爬虫学习,轻松爬取大规模数据
Jan 03 #Python
You might like
WordPress中is_singular()函数简介
2015/02/05 PHP
phpstudy2018升级MySQL5.5为5.7教程(图文)
2018/10/24 PHP
PHP实现页面静态化深入讲解
2021/03/04 PHP
js动画(animate)简单引擎代码示例
2012/12/04 Javascript
java和javascript获取word文档的书签位置对比
2014/06/19 Javascript
JS实现动态生成表格并提交表格数据向后端
2020/11/25 Javascript
JS/jQ实现免费获取手机验证码倒计时效果
2016/06/13 Javascript
JavaScript中ES6字符串扩展方法
2016/08/26 Javascript
jQuery select自动选中功能实现方法分析
2016/11/28 Javascript
微信小程序 摇一摇抽奖简单实例实现代码
2017/01/09 Javascript
详解在AngularJS的controller外部直接获取$scope
2017/06/02 Javascript
Vue 父子组件的数据传递、修改和更新方法
2018/03/01 Javascript
Vue的H5页面唤起支付宝支付功能
2019/04/18 Javascript
微信小程序上传多图到服务器并获取返回的路径
2019/05/05 Javascript
Vuex新手的理解与使用详解
2019/05/31 Javascript
JS实现json数组排序操作实例分析
2019/10/28 Javascript
2020淘宝618理想生活列车自动领喵币js脚本的代码
2020/06/02 Javascript
浅谈Python的垃圾回收机制
2016/12/17 Python
Python编程求质数实例代码
2018/01/31 Python
python3使用flask编写注册post接口的方法
2018/12/28 Python
浅谈Django中view对数据库的调用方法
2019/07/18 Python
Pytorch基本变量类型FloatTensor与Variable用法
2020/01/08 Python
使用Python来做一个屏幕录制工具的操作代码
2020/01/18 Python
django自带的权限管理Permission用法说明
2020/05/13 Python
python tkinter的消息框模块(messagebox,simpledialog)
2020/11/07 Python
Lands’ End官网:经典的美国生活方式品牌
2016/08/14 全球购物
加拿大租车网站:Enterprise Rent-A-Car
2018/07/26 全球购物
PHP解析URL是哪个函数?怎么用?
2013/05/09 面试题
文明餐桌活动方案
2014/02/11 职场文书
课程改革实施方案
2014/03/16 职场文书
公休请假条
2014/04/11 职场文书
关于学习的演讲稿
2014/05/10 职场文书
高校师德师风自我剖析材料
2014/09/29 职场文书
乱丢垃圾袋检讨书
2014/10/08 职场文书
MongoDB使用场景总结
2022/02/24 MongoDB
nginx代理实现静态资源访问的示例代码
2022/07/07 Servers