ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

45 二叉树的右视图

45 二叉树的右视图 给定一个二叉树的根节点root想象自己站在它的右侧按照从顶部到底部的顺序返回从右侧所能看到的节点值。示例 1输入root [1,2,3,null,5,null,4]输出[1,3,4]解释示例 2输入root [1,2,3,4,null,null,null,5]输出[1,3,4,5]解释示例 3输入root [1,null,3]输出[1,3]示例 4输入root []输出[]提示:二叉树的节点个数的范围是[0,100]-100 Node.val 100思路使用层次遍历的方法遍历二叉树的每一层然后取每一层的最后一个元素即可vectorint rightSideView(TreeNode* root) { vectorint res; if(!root) return res; queueTreeNode* inque; inque.push(root); int queSize0; while(!inque.empty()){ queSizeinque.size(); for(int i0;iqueSize-1;i){ rootinque.front(); if(root-left) inque.push(root-left); if(root-right) inque.push(root-right); inque.pop(); } //处理每一层的最后一个元素 rootinque.front(); res.push_back(root); if(root-left) inque.push(root-left); if(root-right) inque.push(root-right); inque.pop(); } return res; }推荐一个零声教育学习教程个人觉得老师讲得不错分享给大家[LinuxNginx ZeroMQMySQLRedisfastdfsMongoDBZK流媒体CDNP2PK8SDockerTCP/IP协程DPDK等技术内容点击立即学习:链接
返回列表