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

建设网站首页清远今日头条新闻

建设网站首页,清远今日头条新闻,为什么需要建设网站,学做网网站论坛文章目录 题目方法一:单循环栈做法方法二:递归 题目 方法一:单循环栈做法 关键在于子节点的入栈顺序,决定了子节点的出栈顺序, 因为是前序遍历 所以压栈顺序先让右边的入栈 依次往左 这样左边的节点会在栈顶 这样下次…

文章目录

    • 题目
    • 方法一:单循环栈做法
    • 方法二:递归

题目

在这里插入图片描述

方法一:单循环栈做法

关键在于子节点的入栈顺序,决定了子节点的出栈顺序,
因为是前序遍历 所以压栈顺序先让右边的入栈 依次往左 这样左边的节点会在栈顶 这样下次优先出栈的是左边的元素 满足前序遍历

 for(int i = root.children.size()-1 ; i>=0 ;i--)stack.push(root.children.get(i));
class Solution {public List<Integer> preorder(Node root) {if(root==null) return new ArrayList<>();List<Integer> res = new ArrayList<>();Deque<Node> stack = new LinkedList<>();stack.push(root);while(!stack.isEmpty()){root  = stack.pop();res.add(root.val);//因为是前序遍历  所以压栈顺序先让右边的入栈  依次往左  这样左边的节点会在栈顶 这样下次优先出栈的是左边的元素 满足前序遍历for(int i = root.children.size()-1 ; i>=0 ;i--)stack.push(root.children.get(i));}return res;}
}

方法二:递归

原理和二叉树的前序遍历一样 相当于把左右孩子 改成孩子集合了 孩子变多了而已,核心还是 根左右(先跟 再左孩子 在右孩子)

class Solution {List<Integer> res = new ArrayList<>();public List<Integer> preorder(Node root) {dfs(root);return res;}public void dfs(Node root){if(root == null) return;res.add(root.val);//前for(Node node : root.children)//中中中中中dfs(node);}
}
http://www.dtcms.com/wzjs/224820.html

相关文章:

  • 网站所有人查询网络营销的好处
  • 建湖哪家专业做网站整合营销什么意思
  • 营销网站与企业网站的区别免费个人网站建站申请
  • 未做301重定向的网站东莞seo整站优化
  • 网站建设的策划方案河北seo技术培训
  • 顺德公司网站制作青岛谷歌优化
  • 高端网站建设域名注册如何做好网站推广优化
  • 大连制作网站广州线上教学
  • 毕业设计开发网站要怎么做为什么sem的工资都不高
  • 绍兴网站建设哪好西安网站seo费用
  • 青岛门户网站建设如何做宣传推广营销
  • 西部数码空间可以做会所网站吗巨量引擎app
  • 品牌微信网站开发新手怎样做网络推广
  • 国内 设计网站的公司天津seo网络
  • 信息系网站建设开题报告书网站seo顾问
  • 企业做网站建设的好处百度手机应用商店
  • 如何建设一个动态网站网络推广员怎么做
  • 加强部门网站建设工作八种营销模式
  • 网站建设公司转型做什网站排名优化培训电话
  • 网站和网页的区别在于百度云盘官网登录入口
  • 佛山网站优化公司中国最新领导班子
  • 网站开发源码广州网络科技有限公司
  • 怎么免费做个人网站济南做网站公司
  • 石家庄整站优化宁波seo推广优化哪家强
  • 网站宣传方案杭州seo优化公司
  • wordpress响应式商场关键词排名优化怎么样
  • 江汉网站建设营销型网站策划
  • 设计投稿的网站有什么百度号码
  • 网页设计实验报告实验原理亚马逊关键词快速优化
  • 网站哪家公司做的好宁波seo关键词优化教程