输入一个链表,反转链表后,输出链表的所有元素。
public ListNode ReverseList(ListNode pHead)
{
// write code here
ListNode NextHead = null;
ListNode PreHead = null;
if (pHead==null||pHead.next==null)
{
return pHead;
}
while (pHead!=null)
{
//防止断链,首先需要保存下一节点
NextHead = pHead.next;
//保存完以后,将当前的节点指向前一个节点,使链表逆转
pHead.next= PreHead;
//当前节点和前一个节点同时进行右移
PreHead = pHead;
pHead = NextHead;
}
return PreHead;
}