雙向鏈表的應用
雙向鏈表的插入
- 插入:即實現在鏈表L中第I個結點插入元素的運算。
- 算法思路:調用查找算法
Getlist(L,i)
獲取結點a1的指針p,若p存在申請一q結點,存入元素x,然後修改指針,將q結點插入p結點之前。
- void Dinsert(dlink,datatype x,int i){
dlink p,q;
p=Getlist(L,i);
if(p==NULL) Error(i);
else{
q=(dlink)malloc(sizeof(dlinknode));
q->date=x;
q->prior=p->prior;
(p->prior)->next=p;
q->next=p;
p->prior;
}
}