腾讯精选50题(6)--260.反转链表

腾讯精选50题(6)--260.反转链表

迭代方法:

/**
  * 迭代方法:
  * 1 -> 2 -> 3 -> 4 -> null
  * null <- 1 <- 2 <- 3 <- 4
 * 
 */
class Solution {
    public ListNode reverseList(ListNode head) {
    ListNode prev = null;
    ListNode curr = head;
    while(curr!=null){
        ListNode nextTemp = curr.next; //临时指针用来 存储curr的下一个值
        curr.next = prev;//curr的上一个指向上一个
        prev = curr;//上一个变成当前的curr
        curr = nextTemp;//curr指向下一个值(提前存储好)
    }
        return prev;
}
}

腾讯精选50题(6)--260.反转链表