File tree 12 files changed +98
-89
lines changed
s0240_search_a_2d_matrix_ii
s0287_find_the_duplicate_number
s0295_find_median_from_data_stream
s0300_longest_increasing_subsequence
s0347_top_k_frequent_elements
s0416_partition_equal_subset_sum
12 files changed +98
-89
lines changed Load Diff Large diffs are not rendered by default.
Original file line number Diff line number Diff line change @@ -2,7 +2,7 @@ package s0240_search_a_2d_matrix_ii
2
2
3
3
// #Medium #Top_100_Liked_Questions #Array #Binary_Search #Matrix #Divide_and_Conquer
4
4
// #Data_Structure_II_Day_4_Array #Binary_Search_II_Day_8 #Big_O_Time_O(n+m)_Space_O(1)
5
- // #2024_03_18_Time_11_ms_(96.10%)_Space_6.6_MB_(39.51 %)
5
+ // #2025_05_10_Time_9_ms_(98.86%)_Space_8.76_MB_(12.12 %)
6
6
7
7
func searchMatrix (matrix [][]int , target int ) bool {
8
8
r := 0
Original file line number Diff line number Diff line change 1
1
package s0283_move_zeroes
2
2
3
- // #Easy #Top_100_Liked_Questions #Array #Two_Pointers #Algorithm_I_Day_3_Two_Pointers
4
- // #Programming_Skills_I_Day_6_Array #Udemy_Arrays #Big_O_Time_O(n)_Space_O(1)
5
- // #2024_03_18_Time_15_ms_(88.69%)_Space_8_MB_(5.38 %)
3
+ // #Easy #Top_100_Liked_Questions #Array #Two_Pointers #LeetCode_75_Two_Pointers
4
+ // #Algorithm_I_Day_3_Two_Pointers #Programming_Skills_I_Day_6_Array #Udemy_Arrays
5
+ // #Big_O_Time_O(n)_Space_O(1) #2025_05_10_Time_0_ms_(100.00%)_Space_9.28_MB_(18.25 %)
6
6
7
7
func moveZeroes (nums []int ) {
8
8
var j int
Original file line number Diff line number Diff line change @@ -2,7 +2,7 @@ package s0287_find_the_duplicate_number
2
2
3
3
// #Medium #Top_100_Liked_Questions #Array #Binary_Search #Two_Pointers #Bit_Manipulation
4
4
// #Binary_Search_II_Day_5 #Big_O_Time_O(n)_Space_O(n)
5
- // #2024_03_18_Time_68_ms_(98.63%)_Space_8.3_MB_(69.20 %)
5
+ // #2025_05_10_Time_1_ms_(90.38%)_Space_10.41_MB_(41.51 %)
6
6
7
7
func findDuplicate (nums []int ) int {
8
8
arr := make ([]int , len (nums )+ 1 )
Original file line number Diff line number Diff line change @@ -2,7 +2,7 @@ package s0295_find_median_from_data_stream
2
2
3
3
// #Hard #Top_100_Liked_Questions #Sorting #Two_Pointers #Design #Heap_Priority_Queue #Data_Stream
4
4
// #Top_Interview_150_Heap #Big_O_Time_O(n*log_n)_Space_O(n)
5
- // #2024_03_18_Time_240_ms_(100.00%)_Space_22.5_MB_(23.89 %)
5
+ // #2025_05_10_Time_59_ms_(96.70%)_Space_25.46_MB_(10.38 %)
6
6
7
7
func pushHeap (a * []int , x int ) {
8
8
* a = append (* a , x )
Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ package s0300_longest_increasing_subsequence
3
3
// #Medium #Top_100_Liked_Questions #Array #Dynamic_Programming #Binary_Search
4
4
// #Algorithm_II_Day_16_Dynamic_Programming #Binary_Search_II_Day_3 #Dynamic_Programming_I_Day_18
5
5
// #Udemy_Dynamic_Programming #Top_Interview_150_1D_DP #Big_O_Time_O(n*log_n)_Space_O(n)
6
- // #2024_03_16_Time_5_ms_(91.77%)_Space_3.5_MB_(70.57 %)
6
+ // #2025_05_10_Time_0_ms_(100.00%)_Space_5.28_MB_(69.25 %)
7
7
8
8
import "math"
9
9
Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ package s0322_coin_change
3
3
// #Medium #Top_100_Liked_Questions #Array #Dynamic_Programming #Breadth_First_Search
4
4
// #Algorithm_II_Day_18_Dynamic_Programming #Dynamic_Programming_I_Day_20
5
5
// #Level_2_Day_12_Dynamic_Programming #Top_Interview_150_1D_DP #Big_O_Time_O(m*n)_Space_O(amount)
6
- // #2024_03_16_Time_10_ms_(73.33%)_Space_6.4_MB_(71.07 %)
6
+ // #2025_05_10_Time_10_ms_(79.59%)_Space_8.61_MB_(51.21 %)
7
7
8
8
func coinChange (coins []int , amount int ) int {
9
9
dp := make ([]int , amount + 1 )
Original file line number Diff line number Diff line change 1
1
package s0338_counting_bits
2
2
3
- // #Easy #Dynamic_Programming #Bit_Manipulation #Udemy_Bit_Manipulation
4
- // #Big_O_Time_O(num)_Space_O(num) #2024_03_16_Time_0_ms_(100.00%)_Space_4.7_MB_(25.18%)
3
+ // #Easy #Dynamic_Programming #Bit_Manipulation #LeetCode_75_Bit_Manipulation
4
+ // #Udemy_Bit_Manipulation #Big_O_Time_O(num)_Space_O(num)
5
+ // #2025_05_10_Time_0_ms_(100.00%)_Space_6.48_MB_(48.26%)
5
6
6
7
func countBits (num int ) []int {
7
8
result := make ([]int , num + 1 )
Original file line number Diff line number Diff line change @@ -2,7 +2,7 @@ package s0347_top_k_frequent_elements
2
2
3
3
// #Medium #Top_100_Liked_Questions #Array #Hash_Table #Sorting #Heap_Priority_Queue #Counting
4
4
// #Divide_and_Conquer #Quickselect #Bucket_Sort #Data_Structure_II_Day_20_Heap_Priority_Queue
5
- // #Big_O_Time_O(n*log(n))_Space_O(k) #2024_03_16_Time_8_ms_(88.72%)_Space_6.2_MB_(61.53 %)
5
+ // #Big_O_Time_O(n*log(n))_Space_O(k) #2025_05_10_Time_0_ms_(100.00%)_Space_7.96_MB_(62.32 %)
6
6
7
7
import "sort"
8
8
Original file line number Diff line number Diff line change 1
1
package s0394_decode_string
2
2
3
- // #Medium #Top_100_Liked_Questions #String #Stack #Recursion #Level_1_Day_14_Stack #Udemy_Strings
4
- // #Big_O_Time_O(n)_Space_O(n) #2024_03_16_Time_1_ms_(76.33%)_Space_2.2_MB_(26.06%)
3
+ // #Medium #Top_100_Liked_Questions #String #Stack #Recursion #LeetCode_75_Stack
4
+ // #Level_1_Day_14_Stack #Udemy_Strings #Big_O_Time_O(n)_Space_O(n)
5
+ // #2025_05_10_Time_0_ms_(100.00%)_Space_4.00_MB_(85.31%)
5
6
6
7
import (
7
8
"strings"
Original file line number Diff line number Diff line change 1
1
package s0416_partition_equal_subset_sum
2
2
3
3
// #Medium #Top_100_Liked_Questions #Array #Dynamic_Programming #Level_2_Day_13_Dynamic_Programming
4
- // #Big_O_Time_O(n*sums)_Space_O(n*sums) #2024_03_12_Time_13_ms_(91.83%)_Space_2.5_MB_(98.44 %)
4
+ // #Big_O_Time_O(n*sums)_Space_O(n*sums) #2025_05_10_Time_4_ms_(97.02%)_Space_4.42_MB_(72.07 %)
5
5
6
6
func canPartition (nums []int ) bool {
7
- sums := 0
8
- for _ , num := range nums {
9
- sums += num
7
+ sum := 0
8
+ for _ , v := range nums {
9
+ sum += v
10
10
}
11
- if sums % 2 == 1 {
11
+ if sum % 2 == 1 {
12
12
return false
13
13
}
14
- sums /= 2
15
- dp := make ([]bool , sums + 1 )
14
+ sum = sum / 2
15
+ dp := make ([]bool , sum , sum )
16
16
dp [0 ] = true
17
- for _ , num := range nums {
18
- for sum := sums ; sum >= num ; sum -- {
19
- dp [sum ] = dp [sum ] || dp [sum - num ]
17
+ for _ , n := range nums {
18
+ if n <= sum {
19
+ if dp [sum - n ] == true {
20
+ return true
21
+ }
22
+ for j := sum - n - 1 ; j >= 0 ; j -- {
23
+ if dp [j ] == true {
24
+ dp [j + n ] = true
25
+ }
26
+ }
20
27
}
21
28
}
22
- return dp [ sums ]
29
+ return false
23
30
}
Original file line number Diff line number Diff line change 1
1
package s0437_path_sum_iii
2
2
3
- // #Medium #Depth_First_Search #Tree #Binary_Tree #Level_2_Day_7_Tree #Big_O_Time_O(n)_Space_O(n)
4
- // #2024_03_12_Time_7_ms_(74.18%)_Space_5.3_MB_(19.02 %)
3
+ // #Medium #Depth_First_Search #Tree #Binary_Tree #LeetCode_75_Binary_Tree/DFS #Level_2_Day_7_Tree
4
+ // #Big_O_Time_O(n)_Space_O(n) #2025_05_10_Time_0_ms_(100.00%)_Space_6.94_MB_(22.90 %)
5
5
6
6
type TreeNode struct {
7
7
Val int
You can’t perform that action at this time.
0 commit comments