Golang:
思路:广度优先实现层序遍历
代码如下:
func levelOrder(root *Node) [][]int {
var res [][]int
var arr[]*Node
if root!=nil{
arr=append(arr,root)
for len(arr)!=0{
temp:=len(arr)
var level []int
for i:=0;i<temp;i++{
level=append(level,arr[i].Val)
for _,v:=range arr[i].Children{
arr=append(arr,v)
}
}
res=append(res,level)
arr=arr[temp:]
}
}
return res
}
有疑问加站长微信联系(非本文作者)