Java | 数据结构 - 什么是数据结构?

《算法 + 数据结构 = 程序》

——沃思(Pascal语言之父、结构化程序设计的先驱、著名的瑞士科学家)

一、 数据结构的概念

数据结构是现实世界中的数据及其之间关系的反映,它可以从逻辑结构存储(物理)结构两个层面进行刻画。

二、逻辑结构

数据的逻辑结构是指各个数据元素之间的逻辑关系,是呈现在用户面前的,能感知到的数据元素的组织形式。

1. 集合

集合中数据元素之间的关系是“松散性”的。

2. 线性结构

线性结构中数据元素之间存在“一对一”的关系。

3. 树形结构

树形结构中数据元素之间存在“一对多”的关系。

4. 图形结构

图形结构中数据元素之间存在“多对多”的关系。

有时,也将逻辑结构分为两大类,一类为线性结构,另一类为非线性结构-集合、树、图。

三、存储(物理)结构

数据的存储(物理)结构是数据的逻辑结构在计算机中的实现。

1. 顺序存储方式

顺序存储方式是指将所有的数据元素存放在一片连续的存储空间中,并使逻辑上相邻的数据元素其对应的物理位置也相邻,即数据元素的逻辑位置关系与物理位置关系保持一致。

2. 链式存储方式

链式存储方式科技将数据元素存储在任意的物理位置上,每一个数据元素所对应的存储表示由两部分组成,一部分可以存放数据元素值本身,另一部分用于存放表示逻辑关系的指针,即数据元素之间的关系是由附加的指针来表示的。

3. 索引存储方式

索引存储方式在存储数据元素的同时,还增设了一个索引表。索引表中的每一项包括关键字和地址,其中关键字是能够唯一标识一个数据元素的数据项,地址是指示数据元素的存储地址或存储区域的首地址。

4. 散列(哈希)存储方式

散列(哈希)存储方式是将数据元素存储在一片连续的区域内,每一个数据元素的具体存储地址是格局该数据元素的关键字值,通过散列(哈希)函数直接计算出来的。

以上4中存储方式中,顺序存储链式存储是两种最基本、最常用的存储方式;索引存储散列存储是两种为了提高查找效率而经常采用的存储方式。

四、数据的操作

数据的操作就是对数据进行某种方法的处理,也称数据的运算。

常用的操作可归纳如下——

1. 创建操作:建立数据的存储结构。

2. 销毁操作:对已经存在的存储结构将其所有空间释放。

3. 插入操作:在数据存储结构的适当位置上加入一个指定的新的数据元素。

4. 删除操作:将数据存储结构中某个满足指定条件的数据元素进行删除。

5. 查找操作:在数据存储结构中查找满足指定条件的数据元素。

6. 修改操作:修改数据存储结构中某个数据元素的值。

7. 遍历操作:对数据存储结构中每一个数据元素按某种路径访问且仅访问一次。

猜你喜欢

转载自blog.csdn.net/weixin_49851451/article/details/126071184