Java集合中基本数据结构的示例分析

发布时间:2021-06-04 14:44:59 作者:小新
来源:亿速云 阅读:104

这篇文章主要介绍Java集合中基本数据结构的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

集合中三大数据结构

Java集合中基本数据结构的示例分析

数组

Java集合中基本数据结构的示例分析

链表(双向链表)

Java集合中基本数据结构的示例分析

树(Java中二叉树特性)

Java集合中基本数据结构的示例分析

存在问题:树可以认为是介于数组和链表二者之间的一种数据结构,拥有较快的查询速度同时拥有较快的插入和删除速度。但是在树出现极端或严重的不平衡情况下会导致效率低下

Java集合中基本数据结构的示例分析

基于红黑树折中解决二叉树不平衡带来的效率低下问题

红黑树

Java集合中基本数据结构的示例分析

红黑树通过什么自平衡

左旋:以某个节点作为支点(旋转节点),其右子节点变为旋转节点的父节点,右子节点的左节点变为旋转节点的右子节点,左子节点保持不变

Java集合中基本数据结构的示例分析

右旋:以某个节点作为支点(旋转节点),其左子节点变为旋转节点的父节点,左子节点的右子节点变为旋转节点的左子节点,右子节点保持不变

Java集合中基本数据结构的示例分析

变色:节点的颜色由红色变为黑色或者黑色变为红色

Java集合中基本数据结构的示例分析

红黑树插入场景

1、红黑树为空

1.1 插入节点作为根节点并把节点设置为黑色

2、插入节点的父节点为黑节点\

2.1 直接插入

3、插入节点的父节点为红节点

3.1 叔叔节点存在且为红节点

3.2 叔叔节点不存在或者叔叔节点为黑色

3.2.1 P节点是PP节点的左节点

3.2.1.1 插入节点是P节点的左节点

3.2.1.2 插入节点是P节点的右节点

3.2.2 P节点是PP节点的右节点

3.2.2.1 插入节点是P节点的右节点

3.2.2.2 插入节点是P节点的左节点

PP节点左旋

3.2.2.2 插入节点是P节点的左节点

Java集合中基本数据结构的示例分析

以上是“Java集合中基本数据结构的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. java集合之ConcurrentLinkedQueue的示例代码
  2. java集合之TreeMap源码的示例分析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java

上一篇:SpringBoot随机数设置及参数间引用的示例分析

下一篇:Spring Boot jar启动时设置环境参数的示例分析

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》