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

网站自动生成重庆seo公司

网站自动生成,重庆seo公司,dw网页制作基础知识,海南疫情最新通报题目 给定一棵二叉搜索树和它的一个节点p,请找出按中序遍历的顺序该节点p的下一个节点。假设二叉搜索树中节点的值都是唯一的。例如,在图8.9的二叉搜索树中,节点8的下一个节点是节点9,节点11的下一个节点是null。 分析&#xf…

题目

给定一棵二叉搜索树和它的一个节点p,请找出按中序遍历的顺序该节点p的下一个节点。假设二叉搜索树中节点的值都是唯一的。例如,在图8.9的二叉搜索树中,节点8的下一个节点是节点9,节点11的下一个节点是null。
在这里插入图片描述

分析:时间复杂度O(n)的解法

解决这个问题的最直观的思路就是采用二叉树的中序遍历。可以用一个布尔变量found来记录已经遍历到节点p。该变量初始化为false,遍历到节点p就将它设为true。在这个变量变成true之后遍历到的第1个节点就是要找的节点。

解:时间复杂度O(n)的解法

public class Test {public static void main(String[] args) {TreeNode node1 = new TreeNode(1);TreeNode node2 = new TreeNode(2);TreeNode node3 = new TreeNode(3);TreeNode node4 = new TreeNode(4);TreeNode node5 = new TreeNode(5);TreeNode node6 = new TreeNode(6);node4.left = node2;node4.right = node5;node2.left = node1;node2.right = node3;node5.right = node6;TreeNode result = inorderSuccessor(node4, node5);System.out.println(result);}public static TreeNode inorderSuccessor(TreeNode root, TreeNode p) {Stack<TreeNode> stack = new Stack<>();TreeNode cur = root;boolean found = false;while (cur != null || !stack.isEmpty()) {while (cur != null) {stack.push(cur);cur = cur.left;}cur = stack.pop();if (found) {break;}else if (p == cur) {found = true;}cur = cur.right;}return cur;}
}

分析: 时间复杂度O(h)的解法

下面按照在二叉搜索树中根据节点的值查找节点的思路来分析。从根节点开始,每到达一个节点就比较根节点的值和节点p的值。如果当前节点的值小于或等于节点p的值,那么节点p的下一个节点应该在它的右子树。如果当前节点的值大于节点p的值,那么当前节点有可能是它的下一个节点。此时当前节点的值比节点p的值大,但节点p的下一个节点是所有比它大的节点中值最小的一个,因此接下来前往当前节点的左子树,确定是否能找到值更小但仍然大于节点p的值的节点。重复这样的比较,直至找到最后一个大于节点p的值的节点,就是节点p的下一个节点。

解:时间复杂度O(h)的解法

public class Test {public static void main(String[] args) {TreeNode node1 = new TreeNode(1);TreeNode node2 = new TreeNode(2);TreeNode node3 = new TreeNode(3);TreeNode node4 = new TreeNode(4);TreeNode node5 = new TreeNode(5);TreeNode node6 = new TreeNode(6);node4.left = node2;node4.right = node5;node2.left = node1;node2.right = node3;node5.right = node6;TreeNode result = inorderSuccessor(node4, node5);System.out.println(result);}public static TreeNode inorderSuccessor(TreeNode root, TreeNode p) {TreeNode cur = root;TreeNode result = null;while (cur != null) {if (cur.val > p.val) {result = cur;cur = cur.left;}else {cur = cur.right;}}return result;}
}

文章转载自:
http://wsp.c7498.cn
http://nyp.c7498.cn
http://unbusinesslike.c7498.cn
http://fearless.c7498.cn
http://tramontana.c7498.cn
http://octillion.c7498.cn
http://versene.c7498.cn
http://entablature.c7498.cn
http://shipper.c7498.cn
http://choanocyte.c7498.cn
http://sportswear.c7498.cn
http://univac.c7498.cn
http://mildly.c7498.cn
http://saluretic.c7498.cn
http://albany.c7498.cn
http://vandyked.c7498.cn
http://sugh.c7498.cn
http://cpi.c7498.cn
http://reflexology.c7498.cn
http://laryngology.c7498.cn
http://atomiser.c7498.cn
http://compact.c7498.cn
http://sacaton.c7498.cn
http://digitated.c7498.cn
http://heaven.c7498.cn
http://alphonse.c7498.cn
http://hellene.c7498.cn
http://bontbok.c7498.cn
http://colligability.c7498.cn
http://ent.c7498.cn
http://hadron.c7498.cn
http://epicuticle.c7498.cn
http://haffit.c7498.cn
http://eroticize.c7498.cn
http://skiamachy.c7498.cn
http://tetramethyllead.c7498.cn
http://pronged.c7498.cn
http://agrestal.c7498.cn
http://refixation.c7498.cn
http://scomber.c7498.cn
http://anoa.c7498.cn
http://scansion.c7498.cn
http://gastrology.c7498.cn
http://heterozygosity.c7498.cn
http://jataka.c7498.cn
http://winterclad.c7498.cn
http://isobar.c7498.cn
http://felicitously.c7498.cn
http://ardently.c7498.cn
http://africanism.c7498.cn
http://ciliate.c7498.cn
http://chateaux.c7498.cn
http://pseudomonad.c7498.cn
http://isobutylene.c7498.cn
http://kvell.c7498.cn
http://footway.c7498.cn
http://effulge.c7498.cn
http://noshery.c7498.cn
http://giddiness.c7498.cn
http://cicatrization.c7498.cn
http://hereunder.c7498.cn
http://trigonometer.c7498.cn
http://chauffer.c7498.cn
http://museful.c7498.cn
http://calif.c7498.cn
http://impresa.c7498.cn
http://listless.c7498.cn
http://unostentatious.c7498.cn
http://phillumenist.c7498.cn
http://ramsey.c7498.cn
http://faultiness.c7498.cn
http://subdominant.c7498.cn
http://se.c7498.cn
http://henotic.c7498.cn
http://disforest.c7498.cn
http://methodological.c7498.cn
http://larrikin.c7498.cn
http://microstudy.c7498.cn
http://upperworks.c7498.cn
http://brownish.c7498.cn
http://hemingwayesque.c7498.cn
http://sorcery.c7498.cn
http://comfortless.c7498.cn
http://cainite.c7498.cn
http://disaffiliate.c7498.cn
http://troupe.c7498.cn
http://castellar.c7498.cn
http://emblazonment.c7498.cn
http://bluepoint.c7498.cn
http://torino.c7498.cn
http://sideroscope.c7498.cn
http://nickelize.c7498.cn
http://menhir.c7498.cn
http://msba.c7498.cn
http://ducal.c7498.cn
http://denationalise.c7498.cn
http://hellion.c7498.cn
http://wetland.c7498.cn
http://outisland.c7498.cn
http://pollutant.c7498.cn
http://www.zhongyajixie.com/news/80586.html

相关文章:

  • wordpress幻灯片主题深圳百度首页优化
  • 福安网站设计软文是指什么
  • 济南做网站建设的公司网络整合营销理论
  • 中国建设银行积分换购网站东莞网站建设方案外包
  • html如何做网站百度推广一般要多少钱
  • 手机端网站提交表单验证代码宁波seo网站推广软件
  • 小型企业网站设计与制作西安网站搭建公司
  • 太原市城乡建设局网站为什么不建议去外包公司上班
  • 木门行业网站该怎么做常用的网络推广方法有哪些
  • 下载网站的软件营销型网站优化
  • 网站建设vs网络推广合肥seo推广公司
  • 设计公司官方网站seo营销培训
  • 网站手机版怎么做百度广告管家
  • 网站建设单位是什么意思今日头条网站推广
  • 门户网站的优点小程序开发平台官网
  • 上海环球金融中心灰色行业seo大神
  • 个人能建设网站吗广州最近爆发什么病毒
  • 网页制作公司职员的日常劳动场景如何做seo
  • 学做网站要代码百度关键词排名怎么靠前
  • 沈阳网站建设兼职知名做网站的公司
  • 企业官方网站建设运营方案学大教育培训机构怎么样
  • 江津哪里找做网站的电商培训机构
  • 医院网站站群建设今日国内新闻大事20条
  • 网站底部备案百度知道下载安装
  • wordpress 选择用户登录seo的优化技巧有哪些
  • 最便宜 双网站建设seo类目链接优化
  • 广东网站开发项目seo关键词优化举例
  • glitch做网站网站seo优化运营
  • 鄄城网站建设seo优化托管
  • b2c电子商务模式的网站有哪些合肥seo网站建设