69,369
社区成员
发帖
与我相关
我的任务
分享
{
Node<T> *p = first, *q = first, *f = first;
Node<T> *temp_q = first; //中间变量
for (int i = 0; i < n - 1; i ++) {
temp_q = q -> link; //暂存q结点的下一个结点
q -> link = p;
p = q;
q = temp_q;
}
//循环结束时p已指向原链表中的最后一个结点,q指向NULL
f -> link -> link = NULL; //将原链表中第一个结点的指针域置为NULL
f -> link = p; //将头结点指向原链表中的最后一个结点
}
{
Node<T> *p = first->link, *q ;
first->link = NULL;
while( p )
{
q = p -> link;
p -> link = first;
first = p;
p = q;
}
}