*C语言中只有定义了变量才会分配内存,定义数据类型不会分配内存。
一、连续存储(数组)
1、特点:元素类型相同,大小相等。
2、优缺点
优点:存取速度很快。
缺点:插入删除元素很慢,空间通常有限制,事先必须知道数组的长度,需要大块连续内存。
二、离散存储(链表)
1、定义:n个结点离散分配,彼此通过指针相连,每个结点只有一个前驱结点,只有一个后续结点,首结点没有前驱结点,尾结点没有后继结点。
*专业术语:
1)首结点 第一个有效结点
2)尾结点 最后一个有效结点
3)头结点 头结点的数据类型和首结点类型一样
第一个有效结点之前的结点
头结点并不存放有效数据
加头结点的目的是为了方便对链表的操作
4)头指针 指向头结点的指针变量
5)尾指针 指向尾结点的指针变量
*如果希望通过一个函数对链表进行处理,我们至少需要接收链表的哪些参数?
只需要一个参数(头指针)--通过头指针可以推出链表的其他所有信息<