数据结构基础:顺序表详解与动态实现
线性表是 n 个具有相同特性的数据元素的有限序列,逻辑上呈线性结构。常见的线性表包括顺序表、链表、栈、队列等。在物理存储上,线性表通常采用顺序结构或链式结构。
一、什么是顺序表?
定义: 顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,底层通常基于数组实现。
注意: 顺序表不等于数组。数组只是底层存储介质,顺序表是对数组的封装,提供了增删查改等接口。

二、顺序表的分类
1. 静态顺序表
使用定长数组存储元素。缺点是空间固定,可能不够用或造成浪费。

2. 动态顺序表
空间按需申请,灵活性更高。

三、动态顺序表的实现
为了模块化开发,我们通常将头文件、源文件和测试文件分开。
SeqList.h
#pragma once
#include <stdio.h>
#include <stdlib.h>
// 定义数据类型,方便后续修改
typedef int SLTDataType;
// 定义顺序表结构
typedef struct SeqList {
SLTDataType* arr; // 存储数据的指针
int size; // 有效数据个数
int capacity; // 当前容量
} SL;
;




