数组是什么,数据结构中的数组

提到数组,大家首先会想到的是:很多编程语言中都提供有数组这种数据类型,比如 C/C++、Java、Go、C# 等。但本节我要讲解的不是作为数据类型的数组,而是数据结构中提供的一种叫数组的存储结构。

在前面章节中,大家已经学会了很多种线性存储结构,包括顺序表、链表、栈、队列和串。数组也是一种线性存储结构,用来存储逻辑关系为 "一对一" 的数据。

和前面学过的那些线性存储结构相比,数组最大的不同是:它存储的数据可以包含多种“一对一”的逻辑关系。举个简单的例子:

图 1 包含多种线性关系的数据

上图中,{a1, a2, a3, a4}、{b1, b2, b3, b4}、{c1, c2, c3, c4}、{d1, d2, d3, d4} 中各自包含的元素具有“一对一”的逻辑关系,同时 a、b、c、d 这 4 个序列也具有“一对一”的逻辑关系。

类似图 1 这样,存储不止一种“一对一”逻辑关系的数据,数据结构就推荐使用数组存储结构。

数据结构中的数组

对于数组存储结构,我们可以这样理解它:数组是对线性表的扩展,是一种“特殊”的线性存储结构,用来存储具有多种“一对一”逻辑关系的数据。

实际场景中,存储具有 N 种“一对一”逻辑关系的数据,通常会建立 N 维数组:

  • 一维数组和其它线
本文是转载文章,点击查看原文
如有侵权,请联系 lx@jishuguiji.net 删除。