C语言实现链表的反转

C语言实现链表的反转

输入:1->2->3->4->NULL;
输出:4->3->2->1->NULL;

Head * inversion_list(Head *head)
{
    
    
  Head *p,q,r;
  p=head;
  q=head->next;
  head->next =NULL;
  while(q)
  {
    
    
      r = q->next ;//将q的下一指针赋给r
      q->next = p;//q指向p
      p = q;//p后移一位
      q = r;//q后移一位
  }
 return p;

}

猜你喜欢

转载自blog.csdn.net/c13055215176/article/details/111033893