链表:利用非连续的存储空间存储成批数据的存储结构。
数组(静态、动态)
缺点:(1)需要连续的存储空间 (2)插入和删除效率较低
链表优点:(1)不需要连续空间 (2)插入和删除较高
术语:
节点:(结点) 链表中的单个数据的表现形式 数据域和指针域
首节点:存放第一个有效数据的节点。
尾节点:存放最后一个有效数据的节点。
头结点:首节点前边的那个节点
头指针:指向头节点的指针
结论:确定一个链表需要什么信息? 头指针
问题:处理一批整数7个,利用链表存储和处理。
定义链表节点:
struct node
{
int data;
struct node *next;
};
建立n个数据节点的链表:
struct node *createlist(int n)
{
创建一个头结点;
head,p,q指向头结点
循环n次{
创建一个p节点;存放数据;q->next=p;q=p;}
q->next=NULL;
return head;
}
[1]
[2]
[3]
下一页