mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-10 04:06:51 +08:00
添加206.反转链表javaScript版本
This commit is contained in:
@ -147,6 +147,61 @@ Python:
|
|||||||
|
|
||||||
Go:
|
Go:
|
||||||
|
|
||||||
|
javaScript:
|
||||||
|
|
||||||
|
```js
|
||||||
|
/**
|
||||||
|
* @param {ListNode} head
|
||||||
|
* @return {ListNode}
|
||||||
|
*/
|
||||||
|
|
||||||
|
// 双指针:
|
||||||
|
var reverseList = function(head) {
|
||||||
|
if(!head || !head.next) return head;
|
||||||
|
let temp = null, pre = null, cur = head;
|
||||||
|
while(cur) {
|
||||||
|
temp = cur.next;
|
||||||
|
cur.next = pre;
|
||||||
|
pre = cur;
|
||||||
|
cur = temp;
|
||||||
|
}
|
||||||
|
// temp = cur = null;
|
||||||
|
return pre;
|
||||||
|
};
|
||||||
|
|
||||||
|
// 递归:
|
||||||
|
var reverse = function(pre, head) {
|
||||||
|
if(!head) return pre;
|
||||||
|
const temp = head.next;
|
||||||
|
head.next = pre;
|
||||||
|
pre = head
|
||||||
|
return reverse(pre, temp);
|
||||||
|
}
|
||||||
|
|
||||||
|
var reverseList = function(head) {
|
||||||
|
return reverse(null, head);
|
||||||
|
};
|
||||||
|
|
||||||
|
// 递归2
|
||||||
|
var reverse = function(head) {
|
||||||
|
if(!head || !head.next) return head;
|
||||||
|
// 从后往前翻
|
||||||
|
const pre = reverse(head.next);
|
||||||
|
head.next = pre.next;
|
||||||
|
pre.next = head;
|
||||||
|
return head;
|
||||||
|
}
|
||||||
|
|
||||||
|
var reverseList = function(head) {
|
||||||
|
let cur = head;
|
||||||
|
while(cur && cur.next) {
|
||||||
|
cur = cur.next;
|
||||||
|
}
|
||||||
|
reverse(head);
|
||||||
|
return cur;
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user