《最新双向链表插入删除基本操作演示幻灯片》由会员分享,可在线阅读,更多相关《最新双向链表插入删除基本操作演示幻灯片(18页珍藏版)》请在金锄头文库上搜索。
1、双向链表插入删除基本操作演示双向链表插入删除基本操作演示在双向链表中插入结点在双向链表中插入结点Status ListInsert_Dul(DuLinklist &L,int i,ElemType e) if(!(p=GetElem_DuL(L,i)return ERROR; if(!(s=(DuLinkList)malloc(sizeof(DuLNode)return ERROR; s-data=e; s-prior=p-prior; p-prior-next=s; s-next=p; p-prior=s; return OK; a bp在双向链表中插入结点在双向链表中插入结点Status
2、ListInsert_Dul(DuLinklist &L,int i,ElemType e) if(!(p=GetElem_DuL(L,i)return ERROR; if(!(s=(DuLinkList)malloc(sizeof(DuLNode)return ERROR; s-data=e; s-prior=p-prior; p-prior-next=s; s-next=p; p-prior=s; return OK; a bp esStatus ListDelete_Dul(DuLinklist &L,int i,ElemType &e) if(!(p=GetElem_DuL(L,i)r
3、eturn ERROR; e=p-data; p-prior-next=p-next ; p-next-prior=p-prior; free(p); return OK; a b c在双向链表中删除结点在双向链表中删除结点Status ListDelete_Dul(DuLinklist &L,int i,ElemType &e) if(!(p=GetElem_DuL(L,i)return ERROR; e=p-data; p-prior-next=p-next ; p-next-prior=p-prior; free(p); return OK; a b c在双向链表中删除结点在双向链表中删
4、除结点pStatus ListDelete_Dul(DuLinklist &L,int i,ElemType &e) if(!(p=GetElem_DuL(L,i)return ERROR; e=p-data; p-prior-next=p-next ; p-next-prior=p-prior; free(p); return OK; a b c在双向链表中删除结点在双向链表中删除结点pStatus ListDelete_Dul(DuLinklist &L,int i,ElemType &e) if(!(p=GetElem_DuL(L,i)return ERROR; e=p-data; p-
5、prior-next=p-next ; p-next-prior=p-prior; free(p); return OK; a b c在双向链表中删除结点在双向链表中删除结点pStatus ListDelete_Dul(DuLinklist &L,int i,ElemType &e) if(!(p=GetElem_DuL(L,i)return ERROR; e=p-data; p-prior-next=p-next ; p-next-prior=p-prior; free(p); return OK; a b c在双向链表中删除结点在双向链表中删除结点pStatus ListDelete_Du
6、l(DuLinklist &L,int i,ElemType &e) if(!(p=GetElem_DuL(L,i)return ERROR; e=p-data; p-prior-next=p-next ; p-next-prior=p-prior; free(p); return OK; a c在双向链表中删除结点在双向链表中删除结点Status ListDelete_Dul(DuLinklist &L,int i,ElemType &e) if(!(p=GetElem_DuL(L,i)return ERROR; e=p-data; p-prior-next=p-next ; p-next-prior=p-prior; free(p); return OK; a c在双向链表中删除结点在双向链表中删除结点结束语结束语谢谢大家聆听!谢谢大家聆听!18