LeetCode206(反转链表)


题目:

示例:

输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL

解题思路

在遍历列表时,将当前节点的next指针改为前一个元素。需要事先存储当前节点的前一个元素和当前节点的next节点。

代码实现
public class ListNode {
    int val;
    ListNode next;

    ListNode(int x) {
        val = x;
    }
}

class Solution {
    public ListNode reverseList(ListNode head) {
        //迭代
        ListNode prev = null;
        ListNode curr = head;
        while (curr != null) {
            ListNode next = curr.next;
            curr.next = prev;
            prev = curr;
            curr = next;
        }
        return prev;
    }
}

你可能感兴趣的:(LeetCode206(反转链表))