单链表的操作算法详解PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2020/10/13
2
链表的插入
• Status ListInsert_L(Linklist &L, int i, ElmeType e ){
•
p=L;j=0;
•
While( p && j<i-1){
•
p=p->next;
•
++j
•
}
•
If( !p || j>i-1) return ERROR;
Байду номын сангаас
•
•
p=L;j=0;
•
While ( p->next && j<i-1){
•
p=p->next;
•
++j;
•
}
•
if ( !(p->next) ║ j>i-1) return ERROR ;
•
q = p->next;
•
p->next=q->next;
•
e = q->data;
•
free(q);
•
return OK;
•
scanf(& p->data);
•
p->next=L->next;
•
L->next=p;
•
}
•}
2020/10/13
1
链表的查找
• Status GetElem_L(LinkList L, int i, ElemType &e)
• {P=L->next; j=1; • while(p&&j<i){p=p->next; ++j;} • if(!p||j>i)return ERROR; • e=p->data; • return OK;}
s=(Linklist)malloc(sizeof(LNode));
•
s->data=e;
•
s->next=p->next;
•
p->next=s;
•
return OK;
•}
2020/10/13
3
链表的删除
• Status ListDelete_L(Linklist &L, int i, Elemtype &e){
链表的创建
• void CreateList_L(Linklist &L, int n)
•{
•
L=(Linklist) malloc(sizeof(Lnode));
•
L->next=NULL;
•
for(i=n; i>0; --i)
•
{
•
p=(Linklist)malloc(sizeof(Lnode));
•}
2020/10/13
4
谢谢您的指导
THANK YOU FOR YOUR GUIDANCE.
感谢阅读!为了方便学习和使用,本文档的内容可以在下载后随意修改,调整和打印。欢迎下载!
汇报人:XXXX 日期:20XX年XX月XX日
5