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是谁。

posted @ 2017-03-11 19:15  Nicolellu  阅读(132)  评论(0编辑  收藏  举报