题目:将一个单链表进行反转,输出反转后的头指针。
思路:这里踩到了一个小坑,就是原始头指针在反转后,该节点的next指针是指向空的,因此,可以在开始的时候就设置其值,不然就会出现问题,会造成遍历的时候出现死循环。其余的比较好说。
代码:
/*
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}*/
public class Solution {
public ListNode ReverseList(ListNode head) {
if(head==null)
return null;
ListNode node=head;
ListNode node2=head.next;
ListNode node3=null;
node.next=null;
while(node2!=null)
{
node3=node2;
node2=node2.next;
node3.next=node;
node=node3;
}
return node;
}
}