剑指offer——60.把二叉树打印成多行
2017-09-28 16:06
435 查看
题目描述
从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。代码
思路:采用队列数据结构,同时需要两个变量分别存储这一层和下一层结点个数。当前层结点个数为零时,则输出结点function Print(pRoot) { // write code here var queue = [];//存储节点队列 var result = []; if(pRoot==null) return result; var nextLevel = 0; queue.push(pRoot); var toBePrinted = 1;//每一行节点个数 var arr = []; while(queue.length){ var temp = queue.shift(); toBePrinted--; arr.push(temp.val); if(temp.left){ queue.push(temp.left); nextLevel++; } if(temp.right){ queue.push(temp.right); nextLevel++; } if(toBePrinted==0){ toBePrinted=nextLevel; nextLevel=0; result.push(arr); arr = []; } } return result; }
相关文章推荐
- (C++)剑指offer-60:把二叉树打印成多行(树)
- 剑指offer面试题[60]-将二叉树打印成多行
- 剑指offer--面试题60:把二叉树打印成多行
- 【剑指Offer学习】【面试题60:把二叉树打印出多行】
- 剑指Offer_60_把二叉树打印成多行
- 剑指offer 面试题60 把二叉树打印成多行
- 剑指Offer面试题60:把二叉树打印成多行 Java实现
- 【剑指Offer】面试题60:把二叉树打印成多行
- 剑指Offer—60—把二叉树打印成多行
- 剑指offer面试题60 把二叉树打印成多行(Java实现)
- 剑指offer-60.把二叉树打印成多行
- 剑指offer-面试题60-把二叉树打印成多行
- 【剑指Offer学习】【面试题60:把二叉树打印出多行】
- 【剑指Offer】把二叉树打印成多行
- 【剑指offer-解题系列(61)】把二叉树打印成多行
- 剑指offer-----多行打印二叉树(java版)
- 剑指offer-把二叉树打印成多行-php
- 剑指offer | 训练题59:把二叉树打印成多行
- 剑指offer:把二叉树打印成多行
- 剑指offer----把二叉树打印成多行----java实现