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

java21

1.数据结构之二叉树,二叉查找树,平衡二叉树

 

原理:和节点比较大小然后选左边还是右边

注意:中序遍历最常见,因为遍历的结果是从小到大

注意是任意节点,上面的二叉查找树的节点10的左子树高度是0,右子树高度是3,所以不是平衡二叉树。

演变都是为了提高查询和遍历效率

节点12就是添加的节点,节点10就是第一个不平衡的节点即支点

2.数据结构之红黑树(自平衡二叉查找树)

叶节点不算子节点,节点1没有左子节点,其左子节点指针为nil;节点11没有子节点,其左右子节点指针都是nil

平衡二叉树的弊端:添加节点时需要频繁旋转

可以看出节点都是想要尽可能得红,只是不能而已,即:

红黑树的添加节点很难

3.set集合

扩容时机:

当长度为16的数组存储了12个元素时会扩容成原来的2倍

链表转化为红黑树的时机:


会报错,因为没重写排序规则

所以TreeSet不需要重写hashCode和equals方法

http://www.xdnf.cn/news/574057.html

相关文章:

  • BISS0001:高性能热释电红外感应IC的详细介绍
  • 学习STC51单片机10(芯片为STC89C52RC)
  • 近场探头阵列技术解析
  • (eNSP)主备接口备份配置
  • BitsAndBytesConfig参数描述
  • redisson-spring-boot-starter 版本选择
  • MySQL备份恢复:数据安全的终极指南
  • 基于Matlab建立不同信道模型
  • 苍穹外卖05 Redis常用命令在Java中操作Redis_Spring Data Redis使用方式店铺营业状态设置
  • 本特利内华达125768-01 RIM i/o模块规范
  • ESP.wdtFeed();的作用与功能,以及使用方法
  • 「AR智慧应急」新时代:当AR眼镜遇上智能监控,打造立体化应急指挥系统
  • AskTable 集成 Databend:结构化数据的 AI 查询新体验
  • 项目自启动文件配置
  • quickbi实现关联度分析(复刻PowerBI展示)
  • 【深度学习:理论篇】--Pytorch之nn.Module详解
  • 嵌入式开发学习日志(linux系统编程--文件读写函数(2))Day25
  • 算法——数组代码
  • RECCV检测人脸伪造项目尝试与扩展
  • 深度学习实战108-基于通义千问Qwen2.5-Omni的智能数字人实时对话系统实现
  • 免费使用GPU的探索笔记
  • 采用排除法进行EMC问题定位
  • 采用线性优化改进评估配电网的灵活性范围
  • Linux服务器SOS Report完全指南:收集方法、作用解析与最佳实践
  • git checkout HEAD
  • C++11语言级别的多线程
  • 5月21日
  • 云渲染技术解析与渲酷平台深度测评:如何实现高效3D创作?
  • 为什么可以不重写m1方法
  • Multi-Query Attention:传统自注意力( Self-Attention)优化显存和加速方案