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

代码随想录 第8章 二叉树

1、理论知识

(1)、满二叉树

如果一棵二叉树只有度为0的节点和度为2的节点,并且度为0的节点在同一层上,则这棵二叉树为满二叉树。

(2)、完全二叉树

除了底层节点可能没有填满,其余每层的节点数都达到了最大值,并且底层的节点都集中在该层最左边的若干位置。

(3)、二叉搜索树

前面介绍的二叉树都没有数值,而二叉搜索树是有数值的。二叉搜索树是一个有序树,满足如下规则:

一、若它的左子树不为空,则左子树上所有节点的值都小于它的根节点的值。

二、弱它的右子树不为空,则右子树上所有节点的值都大于它的根节点的值。

三、它的左、右子树也分别为二叉排序树。

(4)、平衡二叉搜索树

平衡二叉搜索树又称为AVL树,它是一棵空树,或者它的左右两个字树的高度差的绝对值不超过1,并且两个字树都是一棵平衡二叉树。

2、二叉树的遍历

深度优先:递归、迭代;

广度优先:迭代;

编程语言都是通过栈这种数据结构实现递归的,也就是说,前序、中序、后序遍历都可以通过栈使用非递归的方式实现。

而广度优先遍历一般使用队列实现,这也是由队列先进先出的特点决定的,因为通过先进先出的结构,才能一层一层地遍历二叉树。

http://www.lryc.cn/news/176642.html

相关文章:

  • 计算机网络工程师多选题系列——计算机网络
  • Zabbix5.0_介绍_组成架构_以及和prometheus的对比_大数据环境下的监控_网络_软件_设备监控_Zabbix工作笔记001
  • Spring | 事件监听器应用与最佳实践
  • 正点原子lwIP学习笔记——NETCONN接口简介
  • PHP自动识别采集何意网址文章正文内容
  • 区块链实验室(27) - 区块链+物联网应用案例
  • NPU上PyTorch模型训练问题案例
  • 出现 conda虚拟环境默认放在C盘 解决方法
  • Ubuntu Postgresql开机自启动服务
  • COTS即Commercial Off-The-Shelf 翻译为“商用现成品或技术”或者“商用货架产品”
  • idea开发Springboot出租车管理系统VS开发mysql数据库web结构java编程计算机网页源码maven项目
  • Linux nohup
  • Linux 常见问题
  • 仕达利恩飞讯软件TPM设备管理项目正式启动,向数字化再迈一步
  • 【算法】分治法
  • Rabbit消息的可靠性
  • Java中的网络编程是什么?
  • Oracle 常用命令大全
  • Mysql 开启ssl连接
  • Java Stream流对List集合进行分页
  • Docker(二)、linux环境Docker的部署以及构建镜像
  • GEE错误——Image.select: Pattern ‘MDF‘ did not match any bands
  • 前端JavaScript入门到精通,javascript核心进阶ES6语法、API、js高级等基础知识和实战 —— JS基础(四)
  • mysql超级聚合with rollup
  • 浅谈电动汽车充电桩设计与应用研究
  • tensorflow Windows安装说明
  • 【Leetcode热题】打卡 day11——20(更新至11)
  • linux使用操作[3]
  • 梦想让生活得以忍受-寄语机器视觉工程师
  • linux 设置打开文件数