实际开发中,经常需要一次性存储多个数据,也许是考虑到提高程序员的开发效率,很多编程语言都提供了数组这种数据类型,比如 C、C++、Java、Golang。
数组可以一次性存储多个数据,所有数据连续存放在一整块内存空间中。以 C 语言的数组为例,比如说:
int num[5] = { 1,2,3,4,5 };
将 {1,2,3,4,5} 存储到 num 数组中,数据在内存中的存储状态如下图所示:
看到这张图,是否“似曾相识”呢?在《顺序表(顺序存储结构)详解》一节中,讲解“将 {1,2,3,4,5} 存储到顺序表中”时也用到了这张图。
直观上看,顺序表和数组存储数据的方式是一样的,都是将数据集中存放在一整块内存空间中。那么,顺序表和数组是一样的吗,又或者说,顺序表和数组之间的关系和区别是什么呢?
顺序表和数组的区别
顺序表是一种数据结构,更准确地说是一种线性存储结构,而数组是编程语言提供的一种数据类型,这是它们最本质的区别。
数组的功