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

2021-10-31

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

2021-10-31

Java数据结构数组篇

什么是数据结构?
数据在计算机中的存储结构,即数据在计算机中是如何摆放的。

名称优点缺点
队列提供先进先出的存取方式存取其他项很慢
链表插入快,删除快查找慢
红黑树(平衡树)查找、插入,删除都快算法复杂
2-3-4树(平衡树)查找、插入,删除都快算法复杂
哈希表插入、通过关键字存取快删除慢
插入、删除快,对最大数据的项的存取很快对其他数据项存取蛮
对现实世界建模有些算法复杂且慢

数据结构和算法的重要性
算法是程序的灵魂,优秀的程序可以在计算海量数据计算时,依旧保持高速计算。
如:String str = “java,java,hello,world”;
String temp = str.replaceAll(“java”,“你好”);
//replaceAll 是如何实现的呢???

数据结构包括:线性结构和非线性结构
线性数据结构:特点是:数据元素之前存在着一对一的线性关系。又分为顺序表(存储数据是连续的)和非连续表(链式),主要有数组,队列,链表,栈
非线性数据结构:二维数组,多维数组,广义表,树结构和图结构

数组、二维数组和稀疏数组
数组:int [] array = new int[3]; 很好理解 数组的长度是3,里面存放3个数据,存取:array[0] = 10; array = [1] = 20; …

二维数组:二维数组本质上是以数组作为数组元素的数组, 即同数组比较 数组每个下标内存入的是单个数据,而二维数组每个下标下存入的数据是数组,如下图:

**稀疏数组:**可以看做是特殊二维数组。典型的案例就是五子棋,创建五子棋所用的棋盘空间是比较大的 但是实际的point的点数据只有极少数,实际只有部分棋子的点数据,这个时候为了优化存储空间,可以采用这种二维数组来存储数据,优化存储结构。

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

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

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