新手学网站建设看什么书好,软件开发工程师面试,网站计划任务怎么做,厦门关键词优化平台题目
二叉树的锯齿形层次遍历 给定一个二叉树#xff0c;返回其节点值的锯齿形层次遍历。#xff08;即先从左往右#xff0c;再从右往左进行下一层遍历#xff0c;以此类推#xff0c;层与层之间交替进行#xff09;。
例如#xff1a; 给定二叉树 [3,9,20,null,null…题目
二叉树的锯齿形层次遍历 给定一个二叉树返回其节点值的锯齿形层次遍历。即先从左往右再从右往左进行下一层遍历以此类推层与层之间交替进行。
例如 给定二叉树 [3,9,20,null,null,15,7],
3/ 9 20 / 15 7 返回锯齿形层次遍历如下
[ [3], [20,9], [15,7] ]
res[level] append([]int{root.Val}, res[level]…)
var res [][]int
func dfs(root *TreeNode, level int) {if root ! nil {if len(res) level {res append(res, nil)}if level % 2 1 {res[level] append([]int{root.Val}, res[level]...)} else {res[level] append(res[level], root.Val)}dfs(root.Left, level1)dfs(root.Right, level1)}}func zigzagLevelOrder(root *TreeNode) [][]int {res [][]int{}dfs(root, 0)return res
}