一、数据结构
1.1数据结构的定义
(1)数据:是描述客观事物的数、字符以及所有能输入到计算机中并被计算机程序处理的符号的集合。
数据元素:是数据的基本单位,在计算机中通常作为整体处理
数据项:是具有独立含义的数据最小单位,也称为成员或域
(2)数据结构:是指所涉及的数据元素以及数据元素之间的关系,可以看作是相互之间存在着特定关系的数据元素的集合。(是相互之间存在一种或多种特定关系的数据元素的集合)
数据结构 = 数据对象 + 结构
1.2数据结构
数据结构是计算机科学中用于存储、组织和管理数据以便有效访问和修改的方式。它们为数据元素之间的逻辑关系提供了物理表示。数据结构的选择对于算法的效率、程序的可靠性和可维护性都有重大影响。
数据结构主要分为两大类:线性数据结构和非线性数据结构。
1、线性数据结构:数据元素之间是一对一的关系,即每个元素都有唯一的前驱和后继(除了第一个和最后一个元素)。常见的线性数据结构包括数组、链表、栈和队列。
2、非线性数据结构:数据元素之间是一对多或多对多的关系。常见的非线性数据结构包括树、图等。
二、数组
数组是线性数据结构中最基本、最简单的一种。它是连续分配内存来存储相同类型数据的集合。数组中的每个元素可以通过索引(或下标)来访问,索引通常是从0或1开始的整数。
数组的基本特性:
类型一致性:数组中的所有元素必须具有相同的类型。
随机访问:可以通过索引快速访问数组中的任何元素。
固定大小:一旦创建,数组的大小(即可以存储的元素数量)就不能改变。尽管有些编程语言(如Java的ArrayList)提供了动态数组的实现,允许在运行时改变大小,但这通常是通过底层数组的复制和扩容来实现的。
内存连续性:数组在内存中是连续存储的,这使得它成为访问效率很高的数据结构。