实现双向链表删除一个节点P,在节点P后插入一个节点,写出这两个函数;

匿名网友 匿名网友 发布于: 2015-08-30 00:00:00
阅读 135 收藏 0 点赞 0 评论 0

template void list::delnode(int p)
{
int k=1;
listnode *ptr,*t;
ptr=first;
while(ptr->next!=NULL&&k!=p)
{
ptr=ptr->next;
k++;
}
t=ptr->next;
cout<<"你已经将数据项 "<data<<"删除"<next=ptr->next->next;
length–;
delete t;
}
在节点P后插入一个节点:
template bool list::insert(type t,int p)
{
listnode *ptr;
ptr=first;
int k=1;
while(ptr!=NULL&&knext;
k++;
}
if(ptr==NULL&&k!=p)
return false;
else
{
listnode *tp;
tp=new listnode;
tp->data=t;
tp->next=ptr->next;
ptr->next=tp;
length++;
return true;
}
}

评论列表
文章目录