腾讯精选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;
}
}