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

文章目录

数据结构

概述

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

常见的数据结构

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

数据结构(栈)

特点:后进先出 先进后出

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

数据结构(队列)

特点:先进先出 后进后出

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

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

数据结构(数组)

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

数据结构(链表)

特点

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

相关推荐
阿米亚波3 小时前
【C++ STL】std::forward_list
开发语言·c++·笔记·stl·visual studio·forward_list
用户298698530143 小时前
Java 创建 CSV 文件的三种实用方法:从零构建、数组写入与 Excel 转换
java·后端·excel
buhuizhiyuci3 小时前
【python篇——一周速通python语法】python的条件语句和循环语句
开发语言·python
geovindu3 小时前
go: Recursion Algorithm
开发语言·后端·算法·golang·递归算法
Cry丶3 小时前
一次 FTP 上传引发 504 Gateway Timeout 的排查复盘
java·nginx·ftp·openresty·被动模式·504 gateway·生产问题排查
geovindu3 小时前
CSharp: Composite Pattern
开发语言·后端·c#·组合模式·结构型模式
码农进化录3 小时前
Java 程序员的 AI 进化论 | AI 辅助 CI/CD,让 AI 帮你做代码审查和部署决策
java·spring boot·openai
zyplayer-doc3 小时前
企业文档的进化:网盘和在线文档的下一个升级方向—知识库系统
java·大数据·数据库·人工智能·ocr
消失的旧时光-19433 小时前
KMP Web 开发实战(二):js、wasmJs、browser、executable 到底是什么意思?
开发语言·前端·javascript·跨平台·kmp
吃饱了得干活3 小时前
从零设计一个高并发点赞系统:缓存+MQ异步持久化实战
java·架构