struct Node
{
int data;
Node *next;
};
Node *first; //单链表的头结点
void ConvertList()
{
Node *p, *q, *r; //新建三个结点
p = first->next; //第一个结点(头结点后一个结点
q = p->next; //第二个结点
p->next = NULL; //第一个结点的指针域为空
while (q)
{
r = q->next; //第三个结点
q->next = p; //第二个结点的指针域指向原来的第一个结点
first->next = q; // 把头结点直接拿出放到另一边,指针域指向第二个结点
p = q; //把第二个结点赋给第一个结点
q = r; //把第三个结点赋给第二个结点
} //一直循环直到q为空
}
线性表之单链表逆置
最新推荐文章于 2021-06-11 15:46:08 发布