发布于2020-02-24 23:55 阅读(1011) 评论(0) 点赞(22) 收藏(2)
Example:
Input: [1,2,3,null,5,null,4]
Output: [1, 3, 4]
Explanation:
1 <—
/
2 3 <—
\
5 4 <—
解题思路,栈从左到右存储每一层的node,然后弹出top node
func rightSideView(root *TreeNode) []int {
if root == nil {
return []int{}
}
res := []int{root.Val}
q := []*TreeNode{root}
for len(q) > 0 {
lel := []*TreeNode{}
for i := 0; i < len(q); i++ {
if q[i].Left != nil {
lel = append(lel, q[i].Left)
}
if q[i].Right != nil {
lel = append(lel, q[i].Right)
}
}
if len(lel) > 0{
res = append(res, lel[len(lel)-1].Val)
}
q = lel
}
return res
}
作者:雪儿
链接:https://www.pythonheidong.com/blog/article/232912/7c92c8e2ab0ceae51d27/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!