news 2026/4/15 17:20:49

【数组实现双端队列】判断是不是完全二叉树

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【数组实现双端队列】判断是不是完全二叉树


求解代码

不是完全二叉树主要就两种情况:

1.有右节点无左节点

2.如果是孩子不全的节点,则接下来必须全是叶子节点,否则就不是完全二叉树,对应设置一个leaf变量。

队列双指针:left=队头(出队),right=队尾(入队)

leaf 变量的含义

是否已经进入【叶子节点阶段】,也可以理解为 后续所有节点都必须是「无孩子的叶子节点」,初始值false表示「还没到这个阶段」。

publicstaticintMAXN=101;publicstaticTreeNode[]queue=newTreeNode[MAXN];publicstaticintleft,right;publicbooleanisCompleteTree(TreeNoderoot){if(root==null){returntrue;}left=right=0;queue[right++]=root;booleanleaf=false;while(left<right){root=queue[left++];if(leaf&&(root.left!=null||root.right!=null)){returnfalse;}if(root.left==null&&root.right!=null){returnfalse;}if(root.left!=null){queue[right++]=root.left;}if(root.right!=null){queue[right++]=root.right;}if(root.left==null||root.right==null){leaf=true;}}returntrue;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 12:58:04

2026必备!8个AI论文工具,继续教育学生轻松搞定论文写作!

2026必备&#xff01;8个AI论文工具&#xff0c;继续教育学生轻松搞定论文写作&#xff01; AI 工具如何改变论文写作的未来 在继续教育领域&#xff0c;论文写作一直是学生和研究者面临的重要挑战。随着人工智能技术的不断进步&#xff0c;越来越多的 AI 工具被应用于学术写作…

作者头像 李华
网站建设 2026/4/15 7:42:37

MX播放器 2.6.0| 安卓解码最强的媒体播放器

MX Player被誉为移动平台最强大的本地视频播放器。它以其卓越的解码性能、友好的字幕支持以及兼容各种特效字幕和在线匹配字幕的功能而受到用户的广泛好评。无论是安卓手机还是电视端&#xff0c;MX Player都能提供出色的观看体验&#xff0c;包括小窗口播放功能&#xff0c;使…

作者头像 李华
网站建设 2026/4/16 12:46:42

gre作业

r1配置:r2配置&#xff1a;r3配置&#xff1a;r1 dis ip in br:r3 dis ip in br:pc4 ping pc5:pc4 ping r2环回&#xff1a;pc5 ping r2环回&#xff1a;

作者头像 李华
网站建设 2026/4/16 12:58:59

【系统架构师备考笔记】003信息系统建设核心原则

信息系统建设核心原则与技术实践备考笔记本笔记旨在帮助学员系统理解信息系统建设的核心原则与实践要点&#xff0c;便于快速记忆和复习。内容基于大纲结构化组织&#xff0c;聚焦关键知识点。一、 引言信息系统在现代组织中具有战略地位&#xff0c;是支撑业务运作的核心。建设…

作者头像 李华
网站建设 2026/4/16 13:02:05

【计算机毕业设计案例】基于机器学习卷积神经网络训练识别牙齿是否健康基于python-CNN卷积神经网络训练识别牙齿是否健康

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/4/16 14:01:28

NumPy 迭代数组

NumPy 迭代数组 引言 NumPy 是 Python 中最常用的科学计算库之一,它提供了强大的数组操作功能。在数据分析和处理中,迭代数组是一个常见的需求。本文将详细介绍 NumPy 中迭代数组的各种方法,帮助读者更好地理解和使用 NumPy 进行科学计算。 NumPy 数组简介 在介绍迭代数…

作者头像 李华