Skip to content

Commit b91cce9

Browse files
authored
Merge branch 'neetcode-gh:main' into main
2 parents c5d014f + 022d6a8 commit b91cce9

File tree

2 files changed

+50
-1
lines changed

2 files changed

+50
-1
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ If you would like to have collaborator permissions on the repo to merge your own
192192
<sub>[0876 - Middle of the Linked List](https://leetcode.com/problems/middle-of-the-linked-list/)</sub> | <sub><div align='center'>[✔️](c%2F0876-middle-of-the-linked-list.c)</div></sub> | <sub><div align='center'>[✔️](cpp%2F0876-middle-of-the-linked-list.cpp)</div></sub> | <sub><div align='center'>[✔️](csharp%2F0876-middle-of-the-linked-list.cs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](go%2F0876-Middle-Of-The-Linked-List.go)</div></sub> | <sub><div align='center'>[✔️](java%2F0876-middle-of-the-linked-list.java)</div></sub> | <sub><div align='center'>[✔️](javascript%2F0876-middle-of-the-linked-list.js)</div></sub> | <sub><div align='center'>[✔️](kotlin%2F0876-middle-of-the-linked-list.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F0876-middle-of-the-linked-list.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](rust%2F0876-middle-of-the-linked-list.rs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](typescript%2F0876-middle-of-the-linked-list.ts)</div></sub>
193193
<sub>[0160 - Intersection of Two Linked Lists](https://leetcode.com/problems/intersection-of-two-linked-lists/)</sub> | <sub><div align='center'>[✔️](c%2F0160-intersection-of-two-linked-lists.c)</div></sub> | <sub><div align='center'>[✔️](cpp%2F0160-intersection-of-two-linked-lists.cpp)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](go%2F0160-intersection-of-two-linked-lists.go)</div></sub> | <sub><div align='center'>[✔️](java%2F0160-intersection-of-two-linked-lists.java)</div></sub> | <sub><div align='center'>[✔️](javascript%2F0160-intersection-of-two-linked-lists.js)</div></sub> | <sub><div align='center'>[✔️](kotlin%2F0160-intersection-of-two-linked-lists.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F0160-intersection-of-two-linked-lists.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub>
194194
<sub>[0143 - Reorder List](https://leetcode.com/problems/reorder-list/)</sub> | <sub><div align='center'>[✔️](c%2F0143-reorder-list.c)</div></sub> | <sub><div align='center'>[✔️](cpp%2F0143-reorder-list.cpp)</div></sub> | <sub><div align='center'>[✔️](csharp%2F0143-reorder-list.cs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](go%2F0143-reorder-list.go)</div></sub> | <sub><div align='center'>[✔️](java%2F0143-reorder-list.java)</div></sub> | <sub><div align='center'>[✔️](javascript%2F0143-reorder-list.js)</div></sub> | <sub><div align='center'>[✔️](kotlin%2F0143-reorder-list.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F0143-reorder-list.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](typescript%2F0143-reorder-list.ts)</div></sub>
195-
<sub>[2130 - Maximum Twin Sum Of A Linked List](https://leetcode.com/problems/maximum-twin-sum-of-a-linked-list/)</sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'></div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](java%2F2130-maximum-twin-sum-of-a-linked-list.java)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](kotlin%2F2130-maximum-twin-sum-of-a-linked-list.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F2130-maximum-twin-sum-of-a-linked-list.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub>
195+
<sub>[2130 - Maximum Twin Sum Of A Linked List](https://leetcode.com/problems/maximum-twin-sum-of-a-linked-list/)</sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](cpp%2F2130-maximum-twin-sum-of-a-linked-list.cpp)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](java%2F2130-maximum-twin-sum-of-a-linked-list.java)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](kotlin%2F2130-maximum-twin-sum-of-a-linked-list.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F2130-maximum-twin-sum-of-a-linked-list.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub>
196196
<sub>[0019 - Remove Nth Node From End of List](https://leetcode.com/problems/remove-nth-node-from-end-of-list/)</sub> | <sub><div align='center'>[✔️](c%2F0019-remove-nth-node-from-end-of-list.c)</div></sub> | <sub><div align='center'>[✔️](cpp%2F0019-remove-nth-node-from-end-of-list.cpp)</div></sub> | <sub><div align='center'>[✔️](csharp%2F0019-remove-nth-node-from-end-of-list.cs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](go%2F0019-remove-nth-node-from-end-of-list.go)</div></sub> | <sub><div align='center'>[✔️](java%2F0019-remove-nth-node-from-end-of-list.java)</div></sub> | <sub><div align='center'>[✔️](javascript%2F0019-remove-nth-node-from-end-of-list.js)</div></sub> | <sub><div align='center'>[✔️](kotlin%2F0019-remove-nth-node-from-end-of-list.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F0019-remove-nth-node-from-end-of-list.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](rust%2F0019-remove-nth-node-from-end-of-list.rs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](swift%2F0019-remove-nth-node-from-end-of-list.swift)</div></sub> | <sub><div align='center'>[✔️](typescript%2F0019-remove-nth-node-from-end-of-list.ts)</div></sub>
197197
<sub>[1721 - Swapping Nodes in a Linked List](https://leetcode.com/problems/swapping-nodes-in-a-linked-list/)</sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](kotlin%2F1721-swapping-nodes-in-a-linked-list.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F1721-swapping-nodes-in-a-linked-list.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub>
198198
<sub>[0460 - LFU Cache](https://leetcode.com/problems/lfu-cache/)</sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub>
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
/**
2+
* Definition for singly-linked list.
3+
* struct ListNode {
4+
* int val;
5+
* ListNode *next;
6+
* ListNode() : val(0), next(nullptr) {}
7+
* ListNode(int x) : val(x), next(nullptr) {}
8+
* ListNode(int x, ListNode *next) : val(x), next(next) {}
9+
* };
10+
*/
11+
12+
// Time: O(n)
13+
// Space: O(1)
14+
class Solution {
15+
public:
16+
int pairSum(ListNode* head) {
17+
ListNode *fast = head, *slow = head;
18+
19+
while(fast && fast->next) {
20+
slow = slow->next;
21+
fast = fast->next->next;
22+
}
23+
slow = reverseList(slow);
24+
25+
int mx = 0;
26+
while(head && slow) {
27+
mx = max(mx, head->val + slow->val);
28+
head = head->next;
29+
slow = slow->next;
30+
}
31+
32+
return mx;
33+
}
34+
private:
35+
ListNode* reverseList(ListNode* head) {
36+
ListNode* prev = NULL;
37+
ListNode* curr = head;
38+
ListNode* NEXT = NULL;
39+
40+
while(curr) {
41+
NEXT = curr->next;
42+
curr->next = prev;
43+
prev = curr;
44+
curr = NEXT;
45+
}
46+
47+
return prev;
48+
}
49+
};

0 commit comments

Comments
 (0)