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

快手秒刷自助网站沙洋网站开发

快手秒刷自助网站,沙洋网站开发,湖州网站建设推广,如何看待百度竞价排名二叉树遍历方法总结 二叉树的遍历总体上分为深度优先遍历和广度优先遍历。常见的前中后序三种遍历方式就属于深度优先遍历#xff0c;遍历过程中是顺着一条路径一直遍历到空节点然后向上回溯继续顺着遍历上一个节点的其他方向。层序遍历属于广度优先遍历#xff0c;先遍历完同…二叉树遍历方法总结 二叉树的遍历总体上分为深度优先遍历和广度优先遍历。常见的前中后序三种遍历方式就属于深度优先遍历遍历过程中是顺着一条路径一直遍历到空节点然后向上回溯继续顺着遍历上一个节点的其他方向。层序遍历属于广度优先遍历先遍历完同一层的节点再接着遍历下一层节点。  本文主要介绍二叉树三种深度优先遍历方式的实现方式递归方式和非递归方式。  递归方式实现如下。  前序遍历-力扣144 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left, TreeNode right) {* this.val val;* this.left left;* this.right right;* }* }*/ class Solution {public ListInteger preorderTraversal(TreeNode root) {ListInteger result new LinkedList();if (root null) {return result;}preOrder(root,result);return result;}private void preOrder(TreeNode current,ListInteger result) {if (current ! null) {result.add(current.val);preOrder(current.left,result);preOrder(current.right,result);}} }中序遍历-力扣94就是把前序中的处理节点的顺序调整一下。 private void inOrder(TreeNode current,ListInteger result) {if (current ! null) { inOrder(current.left,result);result.add(current.val);inOrder(current.right,result);} }后序遍历-力扣145将节点处理顺序调整到最后 private void inOrder(TreeNode current,ListInteger result) {if (current ! null) { inOrder(current.left,result); inOrder(current.right,result);result.add(current.val);} }非递归方式实现如下。  前序遍历-力扣144,利用栈保存访问过的节点每访问一个节点就处理一个。 class Solution {public ListInteger preorderTraversal(TreeNode root) {ListInteger result new LinkedList();if (root null) {return result;}DequeTreeNode stack new LinkedList();stack.push(root);while (!stack.isEmpty()) {TreeNode tempNode stack.pop();result.add(tempNode.val);if (tempNode.right ! null) {stack.push(tempNode.right);}if (tempNode.left ! null) {stack.push(tempNode.left);}}return result;} }中序遍历-力扣94 class Solution {public ListInteger inorderTraversal(TreeNode root) {ListInteger result new LinkedList();if (root null) {return result;}DequeTreeNode stack new LinkedList();TreeNode current root;while (!stack.isEmpty() || current ! null) {if (current ! null) {stack.push(current);current current.left;} else {TreeNode tempNode stack.pop();result.add(tempNode.val);current tempNode.right;}}return result;} }后序遍历-力扣145后序遍历可以当成是把前序遍历顺序改变一下从前序的中左右变成中右左然后再把结果倒置。 class Solution {//后序遍历public ListInteger postorderTraversal(TreeNode root) {ListInteger result new LinkedList();if (root null) {return result;}DequeTreeNode stack new LinkedList();stack.push(root);TreeNode cur root;while (!stack.isEmpty()) {TreeNode tempNode stack.pop();result.add(tempNode.val);if (tempNode.left ! null) {stack.push(tempNode.left);}if (tempNode.right ! null) {stack.push(tempNode.right);}}Collections.reverse(result);return result;}}
http://www.hkea.cn/news/14363514/

相关文章:

  • 在线阅读小说网站怎么做如何安装wordpress的备份
  • 网站建设与网页设计难学吗网站支付宝支付接口申请
  • 网站策划书的内容网站开发的路径是什么
  • 博星卓越营销网站设计网站建设 服务范围
  • 自己架设网站北京装饰网站建设
  • 网站地图制作工具wordpress搬家 后台错乱
  • 前端是做网站吗长沙建设网站哪家好
  • 东莞市做网站的公司游戏私人服务器搭建
  • 长沙环路建设开发有限公司网站wordpress怎么汉化插件
  • 网站备案 动态ip腾讯企业网页设计
  • 中国建设承包商网站网站是怎么建设的
  • 网站怎么绑定域名上海网站备案号查询
  • 中英企业网站管理系统建设银行人才招聘官方网站
  • 湖北建设监理协会网站住房和城建设网站首页
  • php做网站首页修改上海开发网站
  • 网站编程技术有哪些教育培训手机网站模板下载
  • 网站推广中h1标签的重要性环球资源网官方网站
  • 外贸网站 设计wordpress下载后放哪
  • 徐州网站建设咨询企业内部网站源码
  • 山东省城乡建设部网站首页物流公司做网站需求
  • 广州网站备案要求淘宝单网站建设
  • 查看网站的目录文件夹权限设置电子政务门户网站建设教训
  • 项目网站设计wordpress更新无法创建目录
  • 北京广告网站建设聊城网站设计公司
  • 网站引导动画怎么做的wordpress 插件汉化
  • 网站建设与管理 吴代文义乌公司网站
  • 网站建设服务器在国外如何打击wordpress 热门 tags
  • 中国建设银行网站u盾修改密码昆明网页重做
  • 58同城找工作wordpress 中文优化版
  • 个人网站的制作方法个人网站服务器租用