美文网首页
按之字形顺序打印二叉树

按之字形顺序打印二叉树

作者: ElricTang | 来源:发表于2019-11-10 10:23 被阅读0次

《剑指offer》刷题笔记。如有更好解法,欢迎留言。

关键字:树的广度遍历(层次遍历)、队列

题目描述:

请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。

思路:

1. 本题可以在《把二叉树打印成多行》的基础上修改(传送门
2. 至此已完成按层次输出树的数组
3. 题目可以理解为偶数行按照从左到右的顺序打印,奇数行按照从右至左的顺序打印。所以只需要遍历结果数组,将奇数行反转就行了。

  • 完整代码
function Print(pRoot){
    if(!pRoot)return [];
    let queue = [];
    let map = new Map();
    map.set(pRoot,0);
    queue.push(pRoot);
    while(queue.length){
    let node = queue.shift();
        let deep = map.get(node);
    if(node.left){
            queue.push(node.left);
            map.set(node.left,deep+1);
        }
    if(node.right){
            queue.push(node.right);
            map.set(node.right,deep+1);
        }
    }
    let res = [];
    for(let item of map.entries()){
        let val = item[0];
        let deep = item[1];
        res[deep] = Array.isArray(res[deep]) ? res[deep] : [];
        res[deep].push(val.val);    
    }
    
    for(let i = 0;i < res.length;i++){
        if(i % 2 === 1){
            res[i] = res[i].reverse();
        }   
    }
  return res;
}

相关文章

  • JZ-059-按之字形顺序打印二叉树

    按之字形顺序打印二叉树 题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从...

  • 打印二叉树

    按之字形顺序打印二叉树 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺...

  • 剑指offer | 按之字形顺序打印二叉树

    按之字形顺序打印二叉树 请实现一个函数按照之字顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的...

  • 二叉树的遍历

    从上往下打印二叉树 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 按之字形顺序打印二叉树 请实现一个函数...

  • 剑指第三周

    对称的二叉树 其实就是要遍历嘛 按之字形顺序打印二叉树 同样是简单的层次遍历 把二叉树打印成多行 这个更简单了 栈...

  • 剑指offer编程题—按之字形打印二叉树

    题目描述请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按...

  • 面试题32 - III. 从上到下打印二叉树 III

    题目描述: 请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,...

  • 面试题32-3.从上到下打印二叉树3_hn

    题目描述 请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第...

  • 剑指offer 33- 之字形打印二叉树

    请实现一个函数按照之字形顺序从上向下打印二叉树。 即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第...

  • Java日记2018-06-04

    32.3 按之字形顺序打印二叉树上一题的扩展,使用辅助的队列 和栈来实现,注意一下注释里面顺序的坑 二叉搜索树的后...

网友评论

      本文标题:按之字形顺序打印二叉树

      本文链接:https://www.haomeiwen.com/subject/qwwobctx.html