- 数据结构
- 逻辑结构
- 存储结构
- 数据运算
- 逻辑结构:
集合,线性,树,图
线性结构:先后顺序关系,首尾元素除外,每个元素有唯一的前驱和唯一的后继
- 存储结构
主要学习链式存储和顺序存储
- 顺序表(逻辑结构为线性结构)
一段连续的内存空间,把要存储的数据按照先后顺序进行存储;
连续的内存空间我要数组来表示,数组元素就是要存储的数据,关系由数组下标来表示。
struct list
{
int num;//用num标记存储的数据个数
int array[size];//size表示数组长度
};
- 顺序表的运算
- 数据的添加
- 数据的删除
- 数据的修改
- 数据的查询
- 表的清空
- 链表(逻辑结构为线性结构)
存储结构是链式存储,逻辑结构为线性结构;所以存储时要把先后顺序的关系也要存储起来;
struct node
{
int data;//存储数据
struct node * next;//存储下一个节点的地址,表示先后关系
};
创建链表时,有无头节点是不一样的:
有头节点的话,就是统一了操作;第一个元素和后面元素的操作是一样的
没有头节点的话,第一个元素的的操作与