Skip to content

Commit 8352c28

Browse files
authored
Updated tags for tasks 146-200
1 parent 335376e commit 8352c28

File tree

10 files changed

+50
-28
lines changed

10 files changed

+50
-28
lines changed

src/main/go/g0101_0200/s0146_lru_cache/lrucache.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package s0146_lru_cache
22

33
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Hash_Table #Design #Linked_List
44
// #Doubly_Linked_List #Udemy_Linked_List #Top_Interview_150_Linked_List
5-
// #Big_O_Time_O(1)_Space_O(capacity) #2024_03_21_Time_421_ms_(93.60%)_Space_69_MB_(91.02%)
5+
// #Big_O_Time_O(1)_Space_O(capacity) #2025_05_08_Time_75_ms_(84.31%)_Space_72.81_MB_(71.88%)
66

77
import "container/list"
88

src/main/go/g0101_0200/s0148_sort_list/solution.go

Lines changed: 40 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@ package s0148_sort_list
22

33
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Sorting #Two_Pointers #Linked_List
44
// #Divide_and_Conquer #Merge_Sort #Level_2_Day_4_Linked_List #Top_Interview_150_Divide_and_Conquer
5-
// #Big_O_Time_O(log(N))_Space_O(log(N)) #2024_03_21_Time_40_ms_(97.89%)_Space_7_MB_(83.99%)
6-
7-
import "slices"
5+
// #Big_O_Time_O(log(N))_Space_O(log(N)) #2025_05_08_Time_7_ms_(87.91%)_Space_8.75_MB_(91.94%)
86

97
type ListNode struct {
108
Val int
@@ -19,21 +17,45 @@ type ListNode struct {
1917
* }
2018
*/
2119
func sortList(head *ListNode) *ListNode {
22-
curr := head
23-
a := []*ListNode{}
24-
for curr != nil {
25-
a = append(a, curr)
26-
curr = curr.Next
20+
if head == nil || head.Next == nil {
21+
return head
22+
}
23+
mid := findMid(head)
24+
left := sortList(head)
25+
right := sortList(mid)
26+
return merge(left, right)
27+
}
28+
29+
func findMid(head *ListNode) *ListNode {
30+
var prev *ListNode
31+
slow, fast := head, head
32+
for fast != nil && fast.Next != nil {
33+
prev = slow
34+
slow = slow.Next
35+
fast = fast.Next.Next
36+
}
37+
prev.Next = nil
38+
return slow
39+
}
40+
41+
func merge(left, right *ListNode) *ListNode {
42+
pointer := new(ListNode)
43+
res := pointer
44+
for left != nil && right != nil {
45+
if left.Val < right.Val {
46+
pointer.Next = left
47+
left = left.Next
48+
} else {
49+
pointer.Next = right
50+
right = right.Next
51+
}
52+
pointer = pointer.Next
53+
}
54+
if left != nil {
55+
pointer.Next = left
2756
}
28-
slices.SortFunc(a, func(l1, l2 *ListNode) int {
29-
return l1.Val - l2.Val
30-
})
31-
newNode := &ListNode{}
32-
curr = newNode
33-
for _, node := range a {
34-
curr.Next = node
35-
curr = node
57+
if right != nil {
58+
pointer.Next = right
3659
}
37-
curr.Next = nil
38-
return newNode.Next
60+
return res.Next
3961
}

src/main/go/g0101_0200/s0152_maximum_product_subarray/solution.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package s0152_maximum_product_subarray
22

33
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Dynamic_Programming
44
// #Dynamic_Programming_I_Day_6 #Level_2_Day_13_Dynamic_Programming #Udemy_Dynamic_Programming
5-
// #Big_O_Time_O(N)_Space_O(1) #2024_03_22_Time_0_ms_(100.00%)_Space_3.6_MB_(17.73%)
5+
// #Big_O_Time_O(N)_Space_O(1) #2025_05_08_Time_0_ms_(100.00%)_Space_5.25_MB_(91.63%)
66

77
func maxProduct(nums []int) int {
88
res := findMax(nums...)

src/main/go/g0101_0200/s0153_find_minimum_in_rotated_sorted_array/solution.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package s0153_find_minimum_in_rotated_sorted_array
22

33
// #Medium #Top_100_Liked_Questions #Array #Binary_Search #Algorithm_II_Day_2_Binary_Search
44
// #Binary_Search_I_Day_12 #Udemy_Binary_Search #Top_Interview_150_Binary_Search
5-
// #Big_O_Time_O(log_N)_Space_O(log_N) #2024_03_22_Time_0_ms_(100.00%)_Space_2.7_MB_(12.41%)
5+
// #Big_O_Time_O(log_N)_Space_O(log_N) #2025_05_08_Time_0_ms_(100.00%)_Space_4.49_MB_(14.09%)
66

77
func findMin(nums []int) int {
88
low, mid, high := 0, 0, len(nums)-1

src/main/go/g0101_0200/s0155_min_stack/minstack.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package s0155_min_stack
33
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Stack #Design
44
// #Data_Structure_II_Day_14_Stack_Queue #Programming_Skills_II_Day_18 #Level_2_Day_16_Design
55
// #Udemy_Design #Top_Interview_150_Stack #Big_O_Time_O(1)_Space_O(N)
6-
// #2024_03_22_Time_12_ms_(79.58%)_Space_7.4_MB_(21.27%)
6+
// #2025_05_08_Time_0_ms_(100.00%)_Space_8.84_MB_(92.55%)
77

88
import "math"
99

src/main/go/g0101_0200/s0160_intersection_of_two_linked_lists/solution.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package s0160_intersection_of_two_linked_lists
22

33
// #Easy #Top_100_Liked_Questions #Top_Interview_Questions #Hash_Table #Two_Pointers #Linked_List
44
// #Data_Structure_II_Day_11_Linked_List #Udemy_Linked_List #Big_O_Time_O(M+N)_Space_O(1)
5-
// #2024_03_22_Time_16_ms_(99.84%)_Space_6.8_MB_(74.72%)
5+
// #2025_05_08_Time_24_ms_(85.37%)_Space_8.62_MB_(59.52%)
66

77
type ListNode struct {
88
Val int

src/main/go/g0101_0200/s0169_majority_element/solution.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package s0169_majority_element
33
// #Easy #Top_100_Liked_Questions #Top_Interview_Questions #Array #Hash_Table #Sorting #Counting
44
// #Divide_and_Conquer #Data_Structure_II_Day_1_Array #Udemy_Famous_Algorithm
55
// #Top_Interview_150_Array/String #Big_O_Time_O(n)_Space_O(1)
6-
// #2024_03_22_Time_15_ms_(70.01%)_Space_6.6_MB_(22.94%)
6+
// #2025_05_08_Time_0_ms_(100.00%)_Space_8.53_MB_(56.86%)
77

88
func majorityElement(nums []int) int {
99
count := 1

src/main/go/g0101_0200/s0189_rotate_array/solution.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package s0189_rotate_array
22

33
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Math #Two_Pointers
44
// #Algorithm_I_Day_2_Two_Pointers #Udemy_Arrays #Top_Interview_150_Array/String
5-
// #Big_O_Time_O(n)_Space_O(1) #2024_03_22_Time_20_ms_(92.61%)_Space_8.4_MB_(12.16%)
5+
// #Big_O_Time_O(n)_Space_O(1) #2025_05_08_Time_0_ms_(100.00%)_Space_9.63_MB_(40.57%)
66

77
func reverse(nums []int, l, r int) {
88
for l <= r {

src/main/go/g0101_0200/s0198_house_robber/solution.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
package s0198_house_robber
22

33
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Dynamic_Programming
4-
// #Algorithm_I_Day_12_Dynamic_Programming #Dynamic_Programming_I_Day_3
4+
// #LeetCode_75_DP/1D #Algorithm_I_Day_12_Dynamic_Programming #Dynamic_Programming_I_Day_3
55
// #Level_2_Day_12_Dynamic_Programming #Udemy_Dynamic_Programming #Top_Interview_150_1D_DP
6-
// #Big_O_Time_O(n)_Space_O(n) #2024_03_22_Time_1_ms_(78.69%)_Space_2.3_MB_(7.60%)
6+
// #Big_O_Time_O(n)_Space_O(n) #2025_05_08_Time_0_ms_(100.00%)_Space_3.88_MB_(99.40%)
77

88
func rob(nums []int) int {
99
if len(nums) == 0 {

src/main/go/g0101_0200/s0200_number_of_islands/solution.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package s0200_number_of_islands
55
// #Algorithm_II_Day_6_Breadth_First_Search_Depth_First_Search
66
// #Graph_Theory_I_Day_1_Matrix_Related_Problems #Level_1_Day_9_Graph/BFS/DFS #Udemy_Graph
77
// #Top_Interview_150_Graph_General #Big_O_Time_O(M*N)_Space_O(M*N)
8-
// #2024_03_22_Time_4_ms_(76.94%)_Space_4_MB_(44.10%)
8+
// #2025_05_08_Time_2_ms_(87.44%)_Space_5.69_MB_(90.06%)
99

1010
func numIslands(grid [][]byte) int {
1111
islands := 0

0 commit comments

Comments
 (0)