Skip to content

Commit 87616dc

Browse files
committed
✅ [83] NeetCode - but coded myself
1 parent 2a1105b commit 87616dc

File tree

2 files changed

+65
-1
lines changed

2 files changed

+65
-1
lines changed

83/o_solution.js

+50
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
class ListNode {
2+
constructor(val, next) {
3+
this.val = (val === undefined ? 0 : val);
4+
this.next = (next === undefined ? null : next);
5+
}
6+
}
7+
8+
/**
9+
* @param {ListNode} head
10+
* @return {ListNode}
11+
*/
12+
const deleteDuplicates = (head) => {
13+
let result = head;
14+
15+
while (head) {
16+
let curr = head;
17+
while (head.next && curr.val === head.next.val) {
18+
head.next = head.next.next;
19+
}
20+
head = head.next;
21+
}
22+
23+
console.log("result")
24+
// console.log(result)
25+
while (result) {
26+
console.log(result.val)
27+
result = result.next;
28+
}
29+
30+
return result;
31+
}
32+
33+
deleteDuplicates(
34+
new ListNode(1,
35+
new ListNode(1,
36+
new ListNode(1,
37+
new ListNode(2,
38+
new ListNode(2,
39+
new ListNode(2,
40+
new ListNode(3,
41+
new ListNode(3
42+
)
43+
)
44+
)
45+
)
46+
)
47+
)
48+
)
49+
)
50+
)

83/solution.js

+15-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ class ListNode {
99
* @param {ListNode} head
1010
* @return {ListNode}
1111
*/
12-
const deleteDuplicates = (head) => {
12+
const deleteDuplicates1 = (head) => {
1313
let map = new Map(), dummy = new ListNode(), result = dummy;
1414

1515
while (head) {
@@ -24,3 +24,17 @@ const deleteDuplicates = (head) => {
2424

2525
return result.next;
2626
}
27+
28+
const deleteDuplicates = (head) => {
29+
let result = head;
30+
31+
while (head) {
32+
let curr = head;
33+
while (head.next && curr.val === head.next.val) {
34+
head.next = head.next.next;
35+
}
36+
head = head.next;
37+
}
38+
39+
return result;
40+
}

0 commit comments

Comments
 (0)