剑指offer—从上往下打印二叉树
2015-10-03 22:41
344 查看
华电北风吹
天津大学认知计算与应用重点实验室
日期:2015/10/3
题目描述
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
解析:这题特别简单,只需要设置一个flag标志为换行符即可。然后广度优先搜索。
天津大学认知计算与应用重点实验室
日期:2015/10/3
题目描述
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
解析:这题特别简单,只需要设置一个flag标志为换行符即可。然后广度优先搜索。
/* 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> v; if(root==NULL) return v; TreeNode * flag=new TreeNode(NULL); queue<TreeNode*> q; q.push(root); q.push(flag); TreeNode* top; while(true) { top=q.front(); q.pop(); if(top->val==NULL) { q.push(top); top=q.front(); q.pop(); if(top->val==NULL) { break; } } v.push_back(top->val); if(top->left!=NULL) q.push(top->left); if(top->right!=NULL) q.push(top->right); } return v; } };
相关文章推荐
- 剑指offer—栈的压入、弹出序列
- jQuery时间轴插件:jQuery Timelinr
- 一步一步学jQuery(三)
- HDU 5491 The Next 2015 ACM/ICPC Asia Regional Hefei Online1008
- [INS-41112] Specified network interface doesnt maintain connectivity across cluster nodes.
- JavaScript---this
- ecshop与jquery冲突兼容问题解决办法只需增加一句代码
- LeetCode OJ : Different Ways to Add Parentheses(在不同位置增加括号的方法)
- js写一个日期
- Javascript - IE8下parseInt()方法的取值异常
- fedora 键盘键位布局 layout
- jQuery对象级插件示例
- JavaScript设计模式——状态模式
- HTML5学习之一:HTML5的结构
- 一、HTML和CSS基础--网页布局--如何用css进行网页布局
- JavaScript权威指南学习之第8章 函数
- JavaScript权威指南学习之第7章 数组
- 自行完成命令行模式的RSS阅读器(只针对Feed源)
- 「JavaScript」四种跨域方式详解
- hadoop 开始时间datanode一个错误 Problem connecting to server