反转链表
题目描述
反转一个单链表。
示例
1 2
| 输入:1 -> 2 -> 3 -> 4 -> 5 -> NULL 输出:5 -> 4 -> 3 -> 2 -> 1 -> NULL
|
进阶
你可以迭代或递归地反转链表。你能否用两种方法解决这道题?
题目来源:力扣(LeetCode)
题目链接:https://leetcode-cn.com/problems/reverse-linked-list
题目著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
解法一
直接反转:
1 2 3 4 5 6 7 8 9 10 11 12 13
| class Solution { public ListNode reverseList(ListNode head) { ListNode newHead = null; ListNode tmp = null; while (head != null) { tmp = head.next; head.next = newHead; newHead = head; head = tmp; } return newHead; } }
|
TODO 递归地反转链表