DSA——反转链表【leetcode 206 Reverse LinkedList】
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
public class Solution {
public ListNode reverseList(ListNode head) {
ListNode temp=null;
ListNode prev=null;
while(head!=null)
{
temp=head.next;
head.next=prev;
prev=head;
head=temp;
}
return prev;
}
}
虽然以前写过,但是不幸的是忘记了,一点思路都没了,
看到代码也还是很蒙,还好画了画图,一下就明白过来啦,第二天也能顺利的写出来没有再忘记嘿嘿
//还有就是!绝对绝对!不要访问null引用的实例变量!!会异常啊!!
//null表示空引用,特殊的java常量,任何引用变量在韦银勇其他对象实例时,都可以用空引用来表示。
///0319复习:
表示,又给忘记了呃,两个指针,最开始都指向null,head!=null时循环,每次循环都确定好当前结点即head的情况,即其next是谁。

浙公网安备 33010602011771号