Skip to content

Commit 942f4f5

Browse files
authored
Update and rename partition.cpp to partition-list.cpp
1 parent 2ff42f1 commit 942f4f5

File tree

2 files changed

+35
-35
lines changed

2 files changed

+35
-35
lines changed

C++/partition-list.cpp

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
// Time: O(n)
2+
// Space: O(1)
3+
4+
/**
5+
* Definition for singly-linked list.
6+
* struct ListNode {
7+
* int val;
8+
* ListNode *next;
9+
* ListNode(int x) : val(x), next(NULL) {}
10+
* };
11+
*/
12+
class Solution {
13+
public:
14+
ListNode *partition(ListNode *head, int x) {
15+
ListNode dummy_smaller{0};
16+
ListNode dummy_larger{0};
17+
auto smaller = &dummy_smaller;
18+
auto larger = &dummy_larger;
19+
20+
while (head) {
21+
if (head->val < x) {
22+
smaller->next = head;
23+
smaller = smaller->next;
24+
} else {
25+
larger->next = head;
26+
larger = larger->next;
27+
}
28+
head = head->next;
29+
}
30+
smaller->next = dummy_larger.next;
31+
larger->next = nullptr;
32+
33+
return dummy_smaller.next;
34+
}
35+
};

C++/partition.cpp

-35
This file was deleted.

0 commit comments

Comments
 (0)