当前位置: 首页 > wzjs >正文

苹果电脑做网站好用吗下列哪些店铺适合交换友情链接

苹果电脑做网站好用吗,下列哪些店铺适合交换友情链接,龙岩做网站,wordpress备份用户权限257. 二叉树的所有路径 - 力扣(LeetCode) 统计二叉树的路径就是从根节点向下遍历直到叶子节点,但这个过程中有很多的细节,比如遍历到叶子节点后怎么再回退到根节点继续想另一个子树遍历,这里就用到了回溯算法。 代码…

257. 二叉树的所有路径 - 力扣(LeetCode)

统计二叉树的路径就是从根节点向下遍历直到叶子节点,但这个过程中有很多的细节,比如遍历到叶子节点后怎么再回退到根节点继续想另一个子树遍历,这里就用到了回溯算法。

代码实现:

class Solution {
private:void traversal(TreeNode*node,vector<int>&path,vector<string>&result){path.push_back(node->val);if(node->left==NULL&&node->right==NULL){string spath;for(int i=0;i<path.size()-1;i++){spath+=to_string(path[i]);spath+="->";}spath+=to_string(path[path.size()-1]);result.push_back(spath);return;}if(node->left){traversal(node->left,path,result);path.pop_back();}if(node->right){traversal(node->right,path,result);path.pop_back();}}
public:vector<string> binaryTreePaths(TreeNode* root) {vector<int>path;vector<string>result;if(root==NULL){return result;}traversal(root,path,result);return result;}
};

这道题统计的是路径,显然采用的是前序遍历,最开始应该是写好遍历到叶子节点后的逻辑:

每一次遍历到的节点值先插入到path数组中,再定义一个临时字符串,遍历每一个元素的值(储存在path中),为了防止最后一个元素后面也有->所以看起来麻烦一点,最后将字符串全部尾插到结果容器中。最后通过return结束当前递归调用,返回到上一层的递归调用中。

        path.push_back(node->val);if(node->left==NULL&&node->right==NULL){string spath;for(int i=0;i<path.size()-1;i++){spath+=to_string(path[i]);spath+="->";}spath+=to_string(path[path.size()-1]);result.push_back(spath);return;}

接下来就是涉及回溯的过程,但实际还是遍历,在节点不是叶子节点时,判断左右子树是否为空,不为空则递归向下循环。最后还要将当前值从path数组中pop出去,在递归循环中,向左右遍历几个节点,就会pop出几个节点。递归函数中不能细想,会绕进去,将代码分成块,解决每一部分,前序遍历时,是先中再左再右,将左子树都遍历完成后,也将左子树中的元素pop出,再遍历右子树。pop不会影响当前节点的递归过程,会影响到遍历到一个叶子后的过程。

        if(node->left){traversal(node->left,path,result);path.pop_back();}if(node->right){traversal(node->right,path,result);path.pop_back();}

http://www.dtcms.com/wzjs/146630.html

相关文章:

  • 银川专业做网站外链网站
  • 农业信息中心网站建设直接进网站的浏览器
  • 国涟建设集团有限公司网站厦门网
  • 免费建设网站申请网站快速排名案例
  • 北京百度搜索排名优化百度地图优化
  • 快站app下载下载微信
  • 做网站用户充值提现软件开发培训中心
  • 石家庄智能网站建设网址安全中心检测
  • 做网站到八方资源网怎么样环球贸易网
  • jsp高级动态网站开发试卷百度云登录入口
  • 做二维码网站如何进行网站推广
  • 新乡做企业网站的公司奇葩网站100个
  • 哪家高端网站建设好娱乐热搜榜今日排名
  • 房价2024年暴跌seo排名优化怎样
  • 查网站服务器所在地千锋教育官方网
  • 网站几几年做的怎么查跟我学seo
  • 国家电网公司交流建设分公司网站网站ip查询站长工具
  • 提供邵阳网站建设站长检测工具
  • 网站非法收录用户信息企业培训有哪些方面
  • 一台服务器怎么做多给网站软文云
  • 宝安石岩网站建设企业为何选择网站推广外包?
  • wap站是什么意思啊海外推广代理商
  • 优秀网站建设公司关键词林俊杰歌词
  • 酒店要做关于网站ppt怎么做市场调查报告模板及范文
  • 手机网站建设维护协议书seo短视频保密路线
  • 网站建设发生的费用会计科目seo推广哪家公司好
  • 苏州做网站需要多少钱淘宝关键词优化
  • 在什么网站上可以找设计兼职来做百度搜索量
  • 专业建设网站企业什么是搜索引擎营销?
  • java网站优点自己怎么做百度推广