数据结构中,如何编写一算法将循环单链表中所有箭头取反。

来源:百度知道 编辑:UC知道 时间:2024/05/30 05:35:51
数据结构中,如何编写一算法将循环单链表中所有箭头取反?

struct *p,*q,*m;
p=head->next;
m=head;
while(p!=head)
q=p->next;
p->next=m;
m=p;
p=q;
}

把原链表的头接点先断开,然后对原来的链表逐个搬到头接点里去,用头插法,不能是尾插法.
L-A-B-C-D-E;
L
L-A(这里要把它的后继接到头接点!)
L-B-A
L-C-B-A
L-D-C-B-A
L-E-D-C-B-A