栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java数据结构

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java数据结构

一、数据结构

数据结构特点三大方面:存储空间、访问效率、增删效率

1、数组


特点:

1、内存地址连续,使用之前必须要指定好数组的长度

2、可以通过下标访问的方式访问成员,查找效率高

3、数组的增删消耗性能

2、链表


特点:

1、灵活的空间要求、存储空间不需要连续

2、不可以通过下标访问,只能通过遍历进行检索

3、对于增删效率会更高,只和操作的前后节点有关

3、树 二叉树

增删效率和访问效率都鉴于数组和链表之间


特点:

1、该节点的左子树节点比该节点小

2、该节点的右子树节点比该节点大

3、左右子树必须是二叉树

4、顺序队列:从左到右,一层一层

不平衡的二叉树:

特点:

1、查询效率不高

可以通过去除顶端优势去解决,红黑树就是去除二叉查找数顶端优势的解决方案,从而达到树的平衡

红黑树

红黑树 Red-Black Tree 是一个自平衡的二叉查找数

树上每个节点遵循的规则:

1、每个节点要么是红色的,要么是黑色的

2、根节点一定是黑色的

3、每个叶子节点【NIL】都是黑色的

4、任意节点到每个叶子节点的路径的黑色节点数量相同

5、红色节点不能做父子节点

红黑树能自平衡,它靠的是什么?三种操作:左旋、右旋、变色

左旋操作:

右旋操作:

变色:结点的颜色由红变黑或由黑变红。

插入处理的场景

记住主要的三种情况:①红黑树为空②插入节点的父节点为黑色③插入节点父节点为红,其中如果叔叔节点也为红,可直接变色解决,如果为黑,则看情况进行平衡调整。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/332385.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号