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

360网站开发网络推广平台有哪些

360网站开发,网络推广平台有哪些,公司介绍视频,福州网站设计知名乐云seo前言 对于二叉树来说#xff0c;遍历它有多种方式#xff0c;其中递归遍历是比较简单的#xff0c;但是非递归的实现就有一定的难度#xff0c;在这里介绍一种非递归实现二叉树遍历的方式。 1.前序遍历 1.1思路 其实对于二叉树的非递归实现#xff0c;实际上就是用代码来…前言 对于二叉树来说遍历它有多种方式其中递归遍历是比较简单的但是非递归的实现就有一定的难度在这里介绍一种非递归实现二叉树遍历的方式。 1.前序遍历 1.1思路 其实对于二叉树的非递归实现实际上就是用代码来模拟操作系统压栈和弹栈的过程。让我们一起来看看吧首先将一棵树 分为左边节点和左边节点的右子树。如图 然后借助于一个栈先将左边节点入栈入栈时要将节点的值存到数组中。将左边节点全部入栈后再来将左边节点的右子树入栈重复上述过程。直至栈为空并且当前的指针也为空此时完成二叉树的前序遍历。如图  1.2代码实现  vectorint preorderTraversal(TreeNode* root){vectorint v;stackTreeNode* sT;//1.处理左边节点//2.处理左边节点的右子树TreeNode * cur root;while(cur || !sT.empty() ){while(cur){//左边节点入栈sT.push(cur);v.push_back(cur-val);cur cur - left;}TreeNode* p sT.top();sT.pop();cur p - right;//左边节点的右子树入栈}return v;} 2.中序遍历 2.1思路         中序遍历的思路和前序遍历基本相同就是此时左边节点入栈时不会将左边节点的val插到数组中而是在栈中将节点的指针取出时再尾插到数组中。  2.2代码实现  vectorint inorderTraversal(TreeNode* root) {vectorint ret;stack TreeNode* sT;TreeNode* cur root;while(cur || !sT.empty()){//树的左边节点入栈while(cur){sT.push(cur);cur cur - left;}//取出栈顶节点的指针//将栈顶节点指针的val尾插到数组中TreeNode * top sT.top();sT.pop();//左边节点的右子树入栈cur top - right;ret.push_back(top-val);}return ret;} 3.后序遍历  3.1思路 后序遍历沿用了中序遍历的思路唯一不同的是将左边节点依次入栈后出栈时先处理当前节点的左子树然后将右子树入栈等处理完右子树后再来处理当前节点。 3.2代码实现  vectorint postorderTraversal(TreeNode* root) {TreeNode * cur root;TreeNode * back nullptr;//用来记录处理上一个节点vectorint ret;stackTreeNode* sT;while(cur || !sT.empty() ){//左边节点入栈while(cur){sT.push(cur);cur cur-left;}//取出栈顶数据TreeNode* top sT.top();if(top-right nullptr || top-right back){ret.push_back(top-val);back top;//记录处理过的节点sT.pop();}else{//左边节点的右子树入栈cur top - right;}}return ret;} 后续遍历需要注意的是在什么时候来对当前节点进行处理要先处理左右节点之后对当前节点进行处理如果右节点为空很好办直接判断右节点为不为空就可以了但是如果右节点不为空呢怎么确保右节点已经处理过了再来对当前节点进行处理呢这里提供一种较为简单的思路通过一个指针来记录上次处理的节点因为后序遍历总是按照左子树右子树和根的处理顺序来的所以我们只需要处理比较上一个处理的节点是不是当前节点的右子树就可以知道 当前节点的右子树是否已经被处理过了来判断当前节点是否需要处理。 讲的不好希望不要喷我。
http://www.pierceye.com/news/98577/

相关文章:

  • 美发网站 源代码网站建设的博客
  • 做电影视频网站赚钱嘛安溪人做的网站
  • 网站建设基础代码赣州专门网公司
  • 购物网站答辩ppt怎么做网站开发环境
  • 做网站的费用计入销售费用吗做装修效果图的网站
  • 企业网站制作深圳免费域名映射
  • 安徽建设厅网站施网站的静态页面谁做
  • 网站内页seo桂林山水甲天下是哪个景点
  • 外贸网站免费建站小榄网站建设公司
  • 做旅游网站赚钱吗wordpress模板调用自定义插件
  • 南宁手机网站建设工艺品做网站
  • 可以下载电影的网站怎么做适合程序员的wordpress主题
  • 哪些网站微信支付平台建设网站软件
  • 做系统网站赚钱做爰网站有哪些
  • 新密做网站公司网站建设工作部署会
  • 上海网站推广方法怎么做网页 网站制作
  • 网站蜘蛛怎么看wordpress多用户商城主题
  • 拨付网站建设经费的请示wordpress+电商版本
  • 深圳网站制作需要多少钱互动营销网站
  • 营销型网站公司名称烟台网站建设专业臻动传媒
  • 哪个网站可以做结婚证企业黄页官网
  • 进网站备案大学生网页设计心得体会
  • 做网站除了广告还有什么收入的短视频营销的发展趋势
  • 企顺网网站建设娜娜视频免费视频在线
  • 如何做英文网站wordpress 247
  • 玄武模板网站制作点击查看视联网视频会议系统
  • 域名购买之后怎么做网站网站二级页面设计要求
  • 一个好的网站怎样布局安康市网站建设
  • 上海企业网站优化多少钱湛江网站建设方案托管
  • 手机网站可以做英文版本吗怎么自己购买域名 建设网站