您的位置:首页 > 理论基础 > 数据结构算法

C++数据结构---链表(删除操作)

2017-08-11 23:14 274 查看
remove函数输入为:待删除节点p

算法:

令p的前驱的后继为p的后继

令p的后继的前驱为p的前驱

C++链表模板代码:

template <typename T>
T List<T>::remove(ListNodePosi(T) p)
{
T _Val = p -> data; //将要删除的节点值备份,以便之后输出
p->pred->succ = p->succ;
p->succ->pred = p->pred;
delete p;//删除节点
_size--;//缩容
return _Val;//返回删除值,其实也可以不返回,这里只是确保删除了正确的元素
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ 数据结构