[进阶]java基础之集合(三)数据结构

文章目录

数据结构

概述

  • 数据结构是计算机底层存储、组织数据的方式。
  • 是指数据相互之间是以什么方式排列在一起的。
  • 数据结构是为了更加方便的管理和使用数据,需要结合具体的业务场景来进行选择
  • 一般情况下,精心选择的数据结构可以带来更高的运行或者存储效率。

常见的数据结构

栈 队列 数组 链表 二叉树 二叉查找树 平衡二叉树 红黑树

数据结构(栈)

特点:后进先出 先进后出

数据进入栈模型的过程叫压/进栈

数据结构(队列)

特点:先进先出 后进后出

数据从后端进入队列模型的过程称为:入队列

数据从前端离开队列模型的过程称为:出队列

数据结构(数组)

  • 查询速度快::查询数据通过地址值和索引定位,查询任意数据耗时相同。(元素在内存中是连续存储的)
  • 删除效率低:要将原始数据删除,同时后面每个数据前移
  • 添加效率极低:添加位置后的每个数据后移,再添加元素。

数据结构(链表)

特点

链表中的结点是独立的对象,在内存中是不连续的,每个结点包含数据值和下一个结点的地址。
链表查询慢,无论查询哪个数据都要从头开始找。
链表增删相对快

相关推荐
倔强的石头10611 分钟前
应用账号最小权限实践:读写账号、报表账号、运维账号分层
java·运维·开发语言
传人once13 分钟前
页面中心圆圈放大效果如何写
开发语言·javascript·ecmascript
NeilYuen16 分钟前
【C++】STL源码仿写(二):vector
开发语言·c++
Shaoshing28 分钟前
ThreadLocal
java·jvm·threadlocal
写后端的胖头鱼42 分钟前
一文详解CAS
java·jvm·spring·cas·乐观锁·自旋
鱼宵1 小时前
Spring AI 提示词模板:{变量} 参数化 + few-shot,一条提示词反复用
java·人工智能·spring·few-shot·提示词工程·springai
蜗牛互联网1 小时前
Python消费Responses SSE事件:增量文本、超时与取消
java·开发语言·人工智能·后端·python
wanderist.1 小时前
线性筛法详解:从筛质数到欧拉函数、Möbius 函数与约数函数
java·数据结构·算法
weixin_307779131 小时前
C++代码实现MATLAB中的crossval函数功能
开发语言·c++·算法·matlab
ttwuai2 小时前
Go后台管理系统开源项目:4个官方仓库怎么追溯和核验
开发语言·golang·开源