void sert(Node** phead, Node* pos, int x)//在pos之前插入(适合双向链表)
{
assert(phead);
assert(pos);
if (*phead == pos)
{
toucha(phead, x);
}
else
{
Node* prev = *phead;
while (prev->next != pos)
{
prev = prev->next;
}
Node* newnode = buynode(x);
prev->next = newnode;
newnode->next = pos;
}
}
void sert(Node** phead, Node* pos, int x)//在pos之后插入(适合单链表)
{
assert(pos);
Node* newnode = buynode(x);
newnode->next = pos->next;
pos->next = newnode;
}
链表操作之插入
文章详细描述了如何在双向链表的`phead`节点之前和之后以及单链表的`pos`节点之后插入新节点的`voidsert`函数。
摘要由CSDN通过智能技术生成