剑指offer--面试题23:从上往下打印二叉树
来源:互联网 发布:powershell 登陆linux 编辑:程序博客网 时间:2024/06/06 19:54
题目描述
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
python实现:
# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution: # 返回从上到下每个节点值列表,例:[1,2,3] def PrintFromTopToBottom(self, root): # write code here if root is None: return [] from collections import deque queue = deque([root]) #curLevel = 1 result = [] while queue: front = queue.popleft()#队头 #curLevel -= 1 result.append(front.val) if front.left: queue.append(front.left) if front.right: queue.append(front.right) #if curLevel==0: # curLevel = len(queue) return result
c++实现:
/*struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { }};*/class Solution {public: vector<int> PrintFromTopToBottom(TreeNode *root) { vector<int> result; if(root==NULL) return result; queue<TreeNode *> q; q.push(root); while(!q.empty()){ TreeNode *front = q.front(); q.pop(); result.push_back(front->val); if(front->left) q.push(front->left); if(front->right) q.push(front->right); } return result; }};
0 0
- 剑指offer面试题 从上往下打印二叉树
- 剑指offer面试题[23]-从上往下打印二叉树(按层序打印)
- [剑指offer][面试题23]从上往下打印二叉树
- 【剑指offer】面试题23:从上往下打印二叉树
- 《剑指offer》面试题23从上往下打印二叉树
- 剑指Offer:面试题23 从上往下打印二叉树
- 剑指offer 面试题23—从上往下打印二叉树
- 《剑指Offer》学习笔记--面试题23:从上往下打印二叉树
- 剑指offer--面试题23:从上往下打印二叉树--Java实现
- 【剑指Offer学习】【面试题23:从上往下打印二叉树】
- 剑指Offer面试题23(Java版):从上往下打印二叉树
- 剑指offer面试题23-从上往下打印二叉树
- 剑指offer代码解析——面试题23从上往下打印二叉树
- 剑指offer-面试题23:从上往下打印二叉树
- 剑指offer之面试题23:从上往下打印二叉树
- 剑指Offer----面试题23:从上往下打印二叉树(层序遍历)
- 剑指Offer:面试题23——从上往下打印二叉树(java实现)
- 剑指offer 面试题23 从上往下打印二叉树 Java实现
- linux awk 学习笔记一(print 、变量、数组)
- linux awk 学习笔记二(正则匹配、数学、逻辑匹配)
- linux awk 学习笔记三(结构化命令、函数)
- Swift 3.0 -字典
- windows设置代理上网
- 剑指offer--面试题23:从上往下打印二叉树
- windows 路由表
- Linux 路由表
- 最大流问题——无源汇有上下界最大流 sgu194 Reactor Cooling
- eclipse 中创建ant dtd
- linux tail命令
- Android 颜色渲染PorterDuff及Xfermode详解
- Ant入门基础教程
- ant build.xml 范例说明