轴承座价格:C语言中 的链表

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/04 15:50:48
链表 的基本概念是什么?
还有链表的插入 和 删除基本概念是什么?

链表是线形表的一种,线形表分为顺序存储结构和链式存储结构。线形表的顺序存储结构的特点是逻辑关系上相邻的两个元素物理位置上也相邻,因此可以随机存取表中任一元素。链式存储结构的特点是用一组任意的存储单元存储线形表的数据元素。
插入和删除指的是对链表中数据元素的基本操作。
建议你看看《数据结构(c语言版)》,上面说的非常详细。

就是像铁链一样的,一环套一环,如单向链表只有第一环能指向第二环,只有第二环能指向第三环……
基本结构:
struct score
{
int num;
score * next;
}
num是一个链包含的数据,next是指向下一个链的地址

链表的插入就好像向数组里插入一个数,其后面的数向后挪一位一样,关键是保证链表不能断开

void ins(score a,int n,score b)//向a链表中n位置后插入b
{
score *p=a;
for (int i=0;i<n;i++)
{
p=p->next;
}
b->next=p->next->next;
p->next=b;
}

删除同理,关键还是不能让链表断开
void del(score a,int n)//从a链表中删除第n个链
{
score *p=a;
for (int i=0;i<n;i++)
{
p=p->next;
}
score *WillDel=p->next;
p->next=WillDel->next;
delete *WillDel;
}

其中部分代码可能有些问题,因为我手头没有编译器,自己改改,看看