LeetCode第206题Reverse Linked List
Reverse Linked List
Reverse Linked List反转单链表。
Example:
Input: 1->2->3->4->5->NULL
Output: 5->4->3->2->1->NULL
我们需要三个指针,prev
->curr
->next
,从头指针开始反转,令curr
->prev
,完成一个元素的反转之后,令其下一个元素为curr
指针指向的对象,直到当前元素curr
为空,可以使用遍历或递归的方式来实现。
prev | curr | next | … | ||||
---|---|---|---|---|---|---|---|
null | 1 | 2 | … | 3 | 4 | 5 | null |
1 | 2 | 3 | … | 4 | 5 | null | |
2 | 3 | 4 | … | 5 | null | ||
3 | 4 | 5 | … | null | |||
4 | 5 | null | … |
Solution
下面是Java
的代码:
/** |
下面是Python
的代码:
# Definition for singly-linked list. |
总结
LeetCode
题目的难度是变动的,这一题之前还是中等题,最近变成了简单题,可能是练习的人多了,Accepted
高了,说明基础还是很重要的。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 WenQian Dong's Web!