张伦聪的技术博客 Research And Development

206. 反转链表

2018-08-11

反转一个单链表。

示例:

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

进阶: 你可以迭代或递归地反转链表。你能否用两种方法解决这道题?

解:迭代

    public ListNode reverseList(ListNode head) {
        ListNode newListNode = null;
        while (head != null) {
            //保存下一个要遍历的节点
            ListNode nextListNode = head.next;
            //当前节点的next设为newListNode
            head.next = newListNode;
            //设置新节点
            newListNode = head;
            //设置下一个要遍历的节点
            head = nextListNode;
        }
        return newListNode;
    }

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

¥ 打赏博主

类似文章

下一篇 2. 两数相加

留言