主题:请问大家这个问题
			 chaorou11
				 [专家分:0]  发布于 2006-05-12 22:01:00
 chaorou11
				 [专家分:0]  发布于 2006-05-12 22:01:00							
			LINKLIST *invertlink(LINKLIST *)
{
LINKLIST *p,*q,*r;
q=null;p=head;
while(p!=null)
{r=q,q=p;这句话的意思是不是r和p都指向一个结点
p=p->next;这句话的意思是色么
q->next=r;这句话的意思是色么
  return q;
}
						
					 
		
			
回复列表 (共3个回复)
		
								
				沙发
				
					 findlyhl [专家分:280]  发布于 2006-05-13 10:01:00
findlyhl [专家分:280]  发布于 2006-05-13 10:01:00				
				你这个应该是实现逆转链表的功能吧?
它的思想是在不增加新的链结点空间的前提下,通过改变链结点指针域地址来实现逆序
r = q; 意思为:r一直跟随q的指向,当q往下遍历的时候,r就指向q的上一个链结点
q = p; 意思为:q一直跟随p的指向,当p往下遍历的时候,q就指向其上一个链结点
p = p->link意为:p遍历整个链表直到p为空。
q->link = r意为: 把结点r连到结点q上。 
最后返回q的地址,则成一个逆序链表
							 
						
				板凳
				
					 chaorou11 [专家分:0]  发布于 2006-05-13 10:06:00
chaorou11 [专家分:0]  发布于 2006-05-13 10:06:00				
				是的
							 
						
				3 楼
				
					 findlyhl [专家分:280]  发布于 2006-05-13 10:20:00
findlyhl [专家分:280]  发布于 2006-05-13 10:20:00				
				
你这个应该是实现逆转链表的功能吧?
它的思想是在不增加新的链结点空间的前提下,通过改变链结点指针域地址来实现逆序
r = q; 意思为:r一直跟随q的指向,当q往下遍历的时候,r就指向q的上一个链结点
q = p; 意思为:q一直跟随p的指向,当p往下遍历的时候,q就指向其上一个链结点
p = p->link意为:p遍历整个链表直到p为空。
q->link = r意为: 把结点r连到结点q上。 
最后返回q的地址,则成一个逆序链表
能明白不?说的有点罗嗦~~~~~~[em2]
							 
									
			
我来回复