JAVA学习日记(十五) 数据结构

一、数据结构概述

数据结构是计算机底层存储、组织数据的方式。

数据结构是指数据相互之间以什么方式排列在一起的。

数据结构是为了更加方便的管理和使用数据,需要结合具体的业务场景来进行选择。

二、常见的数据结构

(一)栈

特点:后进先出,先进后出

数据进入栈模型的过程称为:压/进栈

数据离开栈模型的过程称为:弹/出栈

(二)队列

特点:先进先出,后进后出

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

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

(三)数组

**查询速度快:**查询数据通过地址值和索引值定位,查询任意数据耗时相同。(元素在内存中是连 续存储的)

**删除效率低:**要将原始数据删除,同时后面每个数据前移

**添加效率极低:**添加位置后的每个数据后移,再添加元素

(四)链表

链表中的结点是独立的对象,在内存中是不连续的,每个结点包含数据值和下一个结点的地址

**查询慢:**无论查询哪一个数据都要从头结点开始遍历

增删相对数组较快

双向链表可以提高查找的效率

(五)总结

相关推荐
xieliyu.6 分钟前
Java手搓数据结构:从零模拟实现无头双向非循环链表
java·数据结构·链表
wuxinyan1231 小时前
大模型学习之路03:提示工程从入门到精通(第三篇)
人工智能·python·学习
如何原谅奋力过但无声1 小时前
【灵神高频面试题合集01-03】相向双指针、滑动窗口
数据结构·python·算法·leetcode
十安_数学好题速析2 小时前
【多选】曲线方程:四步避坑判断曲线类型
笔记·学习·高考
千寻girling2 小时前
五一劳动节快乐 [特殊字符][特殊字符][特殊字符]
java·c++·git·python·学习·github·php
jieyucx2 小时前
Go 数据结构入门:线性表、顺序表、链表
数据结构·链表·golang
波特率1152003 小时前
git指令学习
git·学习
阿维的博客日记3 小时前
zset为什么要用到skiplist+Dict的数据结构
数据结构·skiplist
eLIN TECE3 小时前
Golang 构建学习
开发语言·学习·golang
chase。4 小时前
【学习笔记】skrl: 模块化、灵活的强化学习库深度解析
笔记·学习