二叉树的锯齿形层序遍历1234567891011121314151617181920212223242526272829303132333435363738394041/** * Definition for a binary tree node. * function TreeNode(val, left, right) { * this.val = (val===undefined ? 0 : val) * this.left = (left===undefined ? null : left) * this.right = (right===undefined ? null : right) * } *//** * @param {TreeNode} root * @return {number[][]} */var zigzagLevelOrder = function (root) { let queue = [root], result = []; let count = 1; while (queue.length) { const newQueue = [], values = []; while (queue.length) { const node = queue.pop(); if (node && count % 2 === 1) { values.push(node.val); } if (node && count % 2 === 0) { values.unshift(node.val); } if (node) { // 从左往右 newQueue.unshift(node.left); newQueue.unshift(node.right); } } count++; queue = newQueue; if (values.length) { result.push(values); } } return result;};