Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
528 changes: 264 additions & 264 deletions README.md

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0001_two_sum/solution.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
// #Easy #Top_100_Liked_Questions #Top_Interview_Questions #Array #Hash_Table
// #Data_Structure_I_Day_2_Array #Level_1_Day_13_Hashmap #Udemy_Arrays #Big_O_Time_O(n)_Space_O(n)
// #Data_Structure_I_Day_2_Array #Level_1_Day_13_Hashmap #Udemy_Arrays #Top_Interview_150_Hashmap
// #Big_O_Time_O(n)_Space_O(n) #AI_can_be_used_to_solve_the_task
// #2023_09_28_Time_54_ms_(91.72%)_Space_45.5_MB_(22.26%)

function twoSum(nums: number[], target: number): number[] {
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0002_add_two_numbers/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Math #Linked_List #Recursion
// #Data_Structure_II_Day_10_Linked_List #Programming_Skills_II_Day_15
// #Big_O_Time_O(max(N,M))_Space_O(max(N,M)) #2023_09_28_Time_92_ms_(77.86%)_Space_48_MB_(69.29%)
// #Top_Interview_150_Linked_List #Big_O_Time_O(max(N,M))_Space_O(max(N,M))
// #AI_can_be_used_to_solve_the_task #2023_09_28_Time_92_ms_(77.86%)_Space_48_MB_(69.29%)

import { ListNode } from '../../com_github_leetcode/listnode'

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #String #Hash_Table #Sliding_Window
// #Algorithm_I_Day_6_Sliding_Window #Level_2_Day_14_Sliding_Window/Two_Pointer #Udemy_Strings
// #Big_O_Time_O(n)_Space_O(1) #2023_09_28_Time_65_ms_(90.77%)_Space_44.9_MB_(95.29%)
// #Top_Interview_150_Sliding_Window #Big_O_Time_O(n)_Space_O(1) #AI_can_be_used_to_solve_the_task
// #2023_09_28_Time_65_ms_(90.77%)_Space_44.9_MB_(95.29%)

function lengthOfLongestSubstring(s: string): number {
const lastIndices: number[] = new Array(256).fill(-1)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
// #Hard #Top_100_Liked_Questions #Top_Interview_Questions #Array #Binary_Search #Divide_and_Conquer
// #Big_O_Time_O(log(min(N,M)))_Space_O(1) #2023_08_26_Time_86_ms_(92.15%)_Space_48.3_MB_(59.73%)
// #Top_Interview_150_Binary_Search #Big_O_Time_O(log(min(N,M)))_Space_O(1)
// #AI_can_be_used_to_solve_the_task #2023_08_26_Time_86_ms_(92.15%)_Space_48.3_MB_(59.73%)

function findMedianSortedArrays(nums1: number[], nums2: number[]): number {
const nums = nums1.concat(nums2)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #String #Dynamic_Programming
// #Data_Structure_II_Day_9_String #Algorithm_II_Day_14_Dynamic_Programming
// #Dynamic_Programming_I_Day_17 #Udemy_Strings #Big_O_Time_O(n)_Space_O(n)
// #2023_09_28_Time_68_ms_(95.34%)_Space_44.5_MB_(96.58%)
// #Dynamic_Programming_I_Day_17 #Udemy_Strings #Top_Interview_150_Multidimensional_DP
// #Big_O_Time_O(n)_Space_O(n) #2023_09_28_Time_68_ms_(95.34%)_Space_44.5_MB_(96.58%)

function longestPalindrome(s: string): string {
const newStr: string[] = new Array(s.length * 2 + 1)
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0006_zigzag_conversion/solution.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
// #Medium #String #2023_08_26_Time_64_ms_(95.38%)_Space_47.3_MB_(64.49%)
// #Medium #String #Top_Interview_150_Array/String
// #2023_08_26_Time_64_ms_(95.38%)_Space_47.3_MB_(64.49%)

function convert(s: string, numRows: number): string {
if (numRows < 2) {
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0009_palindrome_number/solution.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
// #Easy #Math #Udemy_Integers #2023_08_25_Time_137_ms_(88.64%)_Space_50.5_MB_(99.43%)
// #Easy #Math #Udemy_Integers #Top_Interview_150_Math
// #2023_08_25_Time_137_ms_(88.64%)_Space_50.5_MB_(99.43%)

function isPalindrome(x: number): boolean {
if (x < 0) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
// #Hard #Top_100_Liked_Questions #Top_Interview_Questions #String #Dynamic_Programming #Recursion
// #Udemy_Dynamic_Programming #Big_O_Time_O(m*n)_Space_O(m*n)
// #2023_08_25_Time_69_ms_(92.65%)_Space_45.9_MB_(50.61%)
// #Hard #Top_Interview_Questions #String #Dynamic_Programming #Recursion #Udemy_Dynamic_Programming
// #Big_O_Time_O(m*n)_Space_O(m*n) #2023_08_25_Time_69_ms_(92.65%)_Space_45.9_MB_(50.61%)

function isMatch(s: string, p: string): boolean { // NOSONAR
const result = new Array(s.length + 1)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Greedy #Two_Pointers
// #Algorithm_II_Day_4_Two_Pointers #Big_O_Time_O(n)_Space_O(1)
// #Algorithm_II_Day_4_Two_Pointers #Top_Interview_150_Two_Pointers #Big_O_Time_O(n)_Space_O(1)
// #2023_08_28_Time_57_ms_(98.23%)_Space_50.9_MB_(84.15%)

function maxArea(height: number[]): number {
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0015_3sum/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Sorting #Two_Pointers
// #Data_Structure_II_Day_1_Array #Algorithm_II_Day_3_Two_Pointers #Udemy_Two_Pointers
// #Big_O_Time_O(n*log(n))_Space_O(n^2) #2023_08_28_Time_148_ms_(92.62%)_Space_59.1_MB_(70.24%)
// #Top_Interview_150_Two_Pointers #Big_O_Time_O(n*log(n))_Space_O(n^2)
// #2023_08_28_Time_148_ms_(92.62%)_Space_59.1_MB_(70.24%)

function threeSum(nums: number[]): number[][] { //NOSONAR
nums.sort((a, b) => a - b)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #String #Hash_Table #Backtracking
// #Algorithm_II_Day_11_Recursion_Backtracking #Udemy_Backtracking/Recursion
// #Big_O_Time_O(4^n)_Space_O(n) #2023_08_28_Time_52_ms_(79.11%)_Space_43.7_MB_(37.41%)
// #Top_Interview_150_Backtracking #Big_O_Time_O(4^n)_Space_O(n)
// #2023_08_28_Time_52_ms_(79.11%)_Space_43.7_MB_(37.41%)

function letterCombinations(digits: string): string[] {
if (digits.length === 0) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Two_Pointers #Linked_List
// #Algorithm_I_Day_5_Two_Pointers #Level_2_Day_3_Linked_List #Big_O_Time_O(L)_Space_O(L)
// #2023_08_28_Time_54_ms_(87.87%)_Space_44.7_MB_(49.30%)
// #Algorithm_I_Day_5_Two_Pointers #Level_2_Day_3_Linked_List #Top_Interview_150_Linked_List
// #Big_O_Time_O(L)_Space_O(L) #2023_08_28_Time_54_ms_(87.87%)_Space_44.7_MB_(49.30%)

import { ListNode } from '../../com_github_leetcode/listnode'

Expand Down
4 changes: 2 additions & 2 deletions src/main/ts/g0001_0100/s0020_valid_parentheses/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Easy #Top_100_Liked_Questions #Top_Interview_Questions #String #Stack
// #Data_Structure_I_Day_9_Stack_Queue #Udemy_Strings #Big_O_Time_O(n)_Space_O(n)
// #2023_08_28_Time_50_ms_(95.90%)_Space_43.5_MB_(83.27%)
// #Data_Structure_I_Day_9_Stack_Queue #Udemy_Strings #Top_Interview_150_Stack
// #Big_O_Time_O(n)_Space_O(n) #2023_08_28_Time_50_ms_(95.90%)_Space_43.5_MB_(83.27%)

function isValid(s: string): boolean {
const stack: string[] = []
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// #Easy #Top_100_Liked_Questions #Top_Interview_Questions #Linked_List #Recursion
// #Data_Structure_I_Day_7_Linked_List #Algorithm_I_Day_10_Recursion_Backtracking
// #Level_1_Day_3_Linked_List #Udemy_Linked_List #Big_O_Time_O(m+n)_Space_O(m+n)
// #2023_08_29_Time_59_ms_(86.77%)_Space_44_MB_(98.03%)
// #Level_1_Day_3_Linked_List #Udemy_Linked_List #Top_Interview_150_Linked_List
// #Big_O_Time_O(m+n)_Space_O(m+n) #2023_08_29_Time_59_ms_(86.77%)_Space_44_MB_(98.03%)

import { ListNode } from '../../com_github_leetcode/listnode'

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #String #Dynamic_Programming
// #Backtracking #Algorithm_II_Day_11_Recursion_Backtracking #Udemy_Backtracking/Recursion
// #Big_O_Time_O(2^n)_Space_O(n) #2023_08_29_Time_60_ms_(62.03%)_Space_45.6_MB_(21.59%)
// #Top_Interview_150_Backtracking #Big_O_Time_O(2^n)_Space_O(n)
// #2023_08_29_Time_60_ms_(62.03%)_Space_45.6_MB_(21.59%)

function generateParenthesis(n: number): string[] {
const sb: string[] = []
Expand Down
4 changes: 2 additions & 2 deletions src/main/ts/g0001_0100/s0023_merge_k_sorted_lists/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Hard #Top_100_Liked_Questions #Top_Interview_Questions #Heap_Priority_Queue #Linked_List
// #Divide_and_Conquer #Merge_Sort #Big_O_Time_O(k*n*log(k))_Space_O(log(k))
// #2023_10_09_Time_76_ms_(94.52%)_Space_47.9_MB_(84.35%)
// #Divide_and_Conquer #Merge_Sort #Top_Interview_150_Divide_and_Conquer
// #Big_O_Time_O(k*n*log(k))_Space_O(log(k)) #2023_10_09_Time_76_ms_(94.52%)_Space_47.9_MB_(84.35%)

import { ListNode } from '../../com_github_leetcode/listnode'

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// #Hard #Top_100_Liked_Questions #Linked_List #Recursion #Data_Structure_II_Day_13_Linked_List
// #Udemy_Linked_List #Big_O_Time_O(n)_Space_O(k)
// #Udemy_Linked_List #Top_Interview_150_Linked_List #Big_O_Time_O(n)_Space_O(k)
// #2023_08_29_Time_74_ms_(66.83%)_Space_46.1_MB_(94.47%)

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Binary_Search
// #Algorithm_II_Day_1_Binary_Search #Binary_Search_I_Day_11 #Level_2_Day_8_Binary_Search
// #Udemy_Binary_Search #Big_O_Time_O(log_n)_Space_O(1)
// #Udemy_Binary_Search #Top_Interview_150_Binary_Search #Big_O_Time_O(log_n)_Space_O(1)
// #2023_09_27_Time_43_ms_(98.54%)_Space_44.3_MB_(31.85%)

function search(nums: number[], target: number): number { //NOSONAR
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Binary_Search
// #Algorithm_II_Day_1_Binary_Search #Binary_Search_I_Day_5 #Big_O_Time_O(log_n)_Space_O(1)
// #2023_09_27_Time_45_ms_(98.05%)_Space_44.5_MB_(54.86%)
// #Algorithm_II_Day_1_Binary_Search #Binary_Search_I_Day_5 #Top_Interview_150_Binary_Search
// #Big_O_Time_O(log_n)_Space_O(1) #2023_09_27_Time_45_ms_(98.05%)_Space_44.5_MB_(54.86%)

function searchRange(nums: number[], target: number): number[] { //NOSONAR
let first = -1
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// #Easy #Top_100_Liked_Questions #Array #Binary_Search #Algorithm_I_Day_1_Binary_Search
// #Binary_Search_I_Day_2 #Big_O_Time_O(log_n)_Space_O(1)
// #Binary_Search_I_Day_2 #Top_Interview_150_Binary_Search #Big_O_Time_O(log_n)_Space_O(1)
// #2023_09_27_Time_51_ms_(80.95%)_Space_44.6_MB_(16.67%)

function searchInsert(nums: number[], target: number): number {
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0039_combination_sum/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Array #Backtracking #Algorithm_II_Day_10_Recursion_Backtracking
// #Level_2_Day_20_Brute_Force/Backtracking #Udemy_Backtracking/Recursion
// #Big_O_Time_O(2^n)_Space_O(n+2^n) #2023_09_29_Time_65_ms_(86.86%)_Space_45.8_MB_(75.98%)
// #Top_Interview_150_Backtracking #Big_O_Time_O(2^n)_Space_O(n+2^n)
// #2023_09_29_Time_65_ms_(86.86%)_Space_45.8_MB_(75.98%)

function combinationSum(candidates: number[], target: number): number[][] {
const result: number[][] = []
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0042_trapping_rain_water/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Hard #Top_100_Liked_Questions #Top_Interview_Questions #Array #Dynamic_Programming #Two_Pointers
// #Stack #Monotonic_Stack #Dynamic_Programming_I_Day_9 #Udemy_Two_Pointers
// #Big_O_Time_O(n)_Space_O(1) #2023_09_30_Time_46_ms_(99.52%)_Space_44.4_MB_(97.58%)
// #Top_Interview_150_Array/String #Big_O_Time_O(n)_Space_O(1)
// #2023_09_30_Time_46_ms_(99.52%)_Space_44.4_MB_(97.58%)

function trap(height: number[]): number {
let result = 0
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0045_jump_game_ii/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Array #Dynamic_Programming #Greedy
// #Algorithm_II_Day_13_Dynamic_Programming #Dynamic_Programming_I_Day_4
// #Big_O_Time_O(n)_Space_O(1) #2023_09_30_Time_50_ms_(95.93%)_Space_44.9_MB_(65.88%)
// #Top_Interview_150_Array/String #Big_O_Time_O(n)_Space_O(1)
// #2023_09_30_Time_50_ms_(95.93%)_Space_44.9_MB_(65.88%)

function jump(nums: number[]): number { //NOSONAR
let minJmp = new Array(nums.length)
Expand Down
2 changes: 1 addition & 1 deletion src/main/ts/g0001_0100/s0046_permutations/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Backtracking
// #Algorithm_I_Day_11_Recursion_Backtracking #Level_2_Day_20_Brute_Force/Backtracking
// #Udemy_Backtracking/Recursion #Big_O_Time_O(n*n!)_Space_O(n+n!)
// #Udemy_Backtracking/Recursion #Top_Interview_150_Backtracking #Big_O_Time_O(n*n!)_Space_O(n+n!)
// #2023_09_30_Time_56_ms_(96.26%)_Space_45.7_MB_(55.35%)

function permute(nums: number[]): number[][] {
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0048_rotate_image/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Math #Matrix
// #Data_Structure_II_Day_3_Array #Programming_Skills_II_Day_7 #Udemy_2D_Arrays/Matrix
// #Big_O_Time_O(n^2)_Space_O(1) #2023_09_30_Time_45_ms_(95.31%)_Space_44.4_MB_(48.24%)
// #Top_Interview_150_Matrix #Big_O_Time_O(n^2)_Space_O(1)
// #2023_09_30_Time_45_ms_(95.31%)_Space_44.4_MB_(48.24%)

/*
Do not return anything, modify matrix in-place instead.
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0049_group_anagrams/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #String #Hash_Table #Sorting
// #Data_Structure_II_Day_8_String #Programming_Skills_II_Day_11 #Udemy_Strings
// #Big_O_Time_O(n*k_log_k)_Space_O(n) #2023_09_30_Time_93_ms_(97.29%)_Space_52_MB_(99.08%)
// #Top_Interview_150_Hashmap #Big_O_Time_O(n*k_log_k)_Space_O(n)
// #2023_09_30_Time_93_ms_(97.29%)_Space_52_MB_(99.08%)

function groupAnagrams(strs: string[]): string[][] {
if (strs.length === 1) return [strs]
Expand Down
4 changes: 2 additions & 2 deletions src/main/ts/g0001_0100/s0053_maximum_subarray/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Easy #Top_100_Liked_Questions #Top_Interview_Questions #Array #Dynamic_Programming
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Dynamic_Programming
// #Divide_and_Conquer #Data_Structure_I_Day_1_Array #Dynamic_Programming_I_Day_5
// #Udemy_Famous_Algorithm #Big_O_Time_O(n)_Space_O(1)
// #Udemy_Famous_Algorithm #Top_Interview_150_Kadane's_Algorithm #Big_O_Time_O(n)_Space_O(1)
// #2023_09_30_Time_66_ms_(90.36%)_Space_51.9_MB_(80.92%)

function maxSubArray(nums: number[]): number {
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0055_jump_game/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Dynamic_Programming #Greedy
// #Algorithm_II_Day_12_Dynamic_Programming #Dynamic_Programming_I_Day_4 #Udemy_Arrays
// #Big_O_Time_O(n)_Space_O(1) #2023_09_30_Time_58_ms_(91.95%)_Space_47.4_MB_(70.79%)
// #Top_Interview_150_Array/String #Big_O_Time_O(n)_Space_O(1)
// #2023_09_30_Time_58_ms_(91.95%)_Space_47.4_MB_(70.79%)

function canJump(nums: number[]): boolean {
let availableSteps = nums[0]
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0001_0100/s0056_merge_intervals/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Sorting
// #Data_Structure_II_Day_2_Array #Level_2_Day_17_Interval #Udemy_2D_Arrays/Matrix
// #Big_O_Time_O(n_log_n)_Space_O(n) #2023_10_01_Time_84_ms_(92.06%)_Space_49.9_MB_(69.16%)
// #Top_Interview_150_Intervals #Big_O_Time_O(n_log_n)_Space_O(n)
// #2023_10_01_Time_84_ms_(92.06%)_Space_49.9_MB_(69.16%)

function merge(intervals: number[][]): number[][] {
let result = []
Expand Down
4 changes: 2 additions & 2 deletions src/main/ts/g0001_0100/s0064_minimum_path_sum/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Medium #Top_100_Liked_Questions #Array #Dynamic_Programming #Matrix
// #Dynamic_Programming_I_Day_16 #Udemy_Dynamic_Programming #Big_O_Time_O(m*n)_Space_O(m*n)
// #2023_10_01_Time_48_ms_(99.67%)_Space_44.5_MB_(90.16%)
// #Dynamic_Programming_I_Day_16 #Udemy_Dynamic_Programming #Top_Interview_150_Multidimensional_DP
// #Big_O_Time_O(m*n)_Space_O(m*n) #2023_10_01_Time_48_ms_(99.67%)_Space_44.5_MB_(90.16%)

function minPathSum(grid: number[][]): number {
let [m, n] = [grid.length, grid[0].length]
Expand Down
4 changes: 2 additions & 2 deletions src/main/ts/g0001_0100/s0070_climbing_stairs/solution.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// #Easy #Top_100_Liked_Questions #Top_Interview_Questions #Dynamic_Programming #Math #Memoization
// #Algorithm_I_Day_12_Dynamic_Programming #Dynamic_Programming_I_Day_2
// #Level_1_Day_10_Dynamic_Programming #Udemy_Dynamic_Programming #Big_O_Time_O(n)_Space_O(n)
// #2023_10_01_Time_44_ms_(94.58%)_Space_42.4_MB_(73.09%)
// #Level_1_Day_10_Dynamic_Programming #Udemy_Dynamic_Programming #Top_Interview_150_1D_DP
// #Big_O_Time_O(n)_Space_O(n) #2023_10_01_Time_44_ms_(94.58%)_Space_42.4_MB_(73.09%)

function climbStairs(n: number, memo: Record<string, number> = {}): number {
if (n in memo) return memo[n]
Expand Down
2 changes: 1 addition & 1 deletion src/main/ts/g0001_0100/s0072_edit_distance/readme.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
72\. Edit Distance

Hard
Medium

Given two strings `word1` and `word2`, return _the minimum number of operations required to convert `word1` to `word2`_.

Expand Down
6 changes: 3 additions & 3 deletions src/main/ts/g0001_0100/s0072_edit_distance/solution.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// #Hard #Top_100_Liked_Questions #String #Dynamic_Programming
// #Medium #Top_100_Liked_Questions #String #Dynamic_Programming
// #Algorithm_II_Day_18_Dynamic_Programming #Dynamic_Programming_I_Day_19
// #Udemy_Dynamic_Programming #Big_O_Time_O(n^2)_Space_O(n2)
// #2023_10_01_Time_68_ms_(95.20%)_Space_47.3_MB_(78.40%)
// #Udemy_Dynamic_Programming #Top_Interview_150_Multidimensional_DP #Big_O_Time_O(n^2)_Space_O(n2)
// #2025_02_15_Time_9_ms_(93.59%)_Space_57.68_MB_(49.82%)

function minDistance(word1: string, word2: string): number {
const memo: number[][] = new Array(word1.length + 1).fill(0).map((_) => [])
Expand Down
2 changes: 1 addition & 1 deletion src/main/ts/g0001_0100/s0073_set_matrix_zeroes/solution.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Hash_Table #Matrix
// #Udemy_2D_Arrays/Matrix #Big_O_Time_O(m*n)_Space_O(1)
// #Udemy_2D_Arrays/Matrix #Top_Interview_150_Matrix #Big_O_Time_O(m*n)_Space_O(1)
// #2023_10_01_Time_61_ms_(97.66%)_Space_45.9_MB_(30.73%)

/*
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Medium #Top_100_Liked_Questions #Array #Binary_Search #Matrix #Data_Structure_I_Day_5_Array
// #Algorithm_II_Day_1_Binary_Search #Binary_Search_I_Day_8 #Level_2_Day_8_Binary_Search
// #Udemy_2D_Arrays/Matrix #Big_O_Time_O(endRow+endCol)_Space_O(1)
// #Udemy_2D_Arrays/Matrix #Top_Interview_150_Binary_Search #Big_O_Time_O(endRow+endCol)_Space_O(1)
// #2023_10_01_Time_45_ms_(96.82%)_Space_44.3_MB_(43.77%)

function searchMatrix(matrix: number[][], target: number): boolean {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Hard #Top_100_Liked_Questions #Top_Interview_Questions #String #Hash_Table #Sliding_Window
// #Level_2_Day_14_Sliding_Window/Two_Pointer #Big_O_Time_O(s.length())_Space_O(1)
// #2023_10_02_Time_82_ms_(82.17%)_Space_46.2_MB_(81.89%)
// #Level_2_Day_14_Sliding_Window/Two_Pointer #Top_Interview_150_Sliding_Window
// #Big_O_Time_O(s.length())_Space_O(1) #2023_10_02_Time_82_ms_(82.17%)_Space_46.2_MB_(81.89%)

function minWindow(s: string, t: string): string { //NOSONAR
const map: Map<string, number> = new Map()
Expand Down
4 changes: 2 additions & 2 deletions src/main/ts/g0001_0100/s0079_word_search/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Array #Matrix #Backtracking
// #Algorithm_II_Day_11_Recursion_Backtracking #Big_O_Time_O(4^(m*n))_Space_O(m*n)
// #2023_10_03_Time_327_ms_(95.78%)_Space_43.4_MB_(84.98%)
// #Algorithm_II_Day_11_Recursion_Backtracking #Top_Interview_150_Backtracking
// #Big_O_Time_O(4^(m*n))_Space_O(m*n) #2023_10_03_Time_327_ms_(95.78%)_Space_43.4_MB_(84.98%)

function exist(board: string[][], word: string): boolean {
if (word.length === 0) return false
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// #Medium #Top_100_Liked_Questions #Dynamic_Programming #Math #Tree #Binary_Tree
// #Binary_Search_Tree #Dynamic_Programming_I_Day_11 #Big_O_Time_O(n)_Space_O(1)
// #Medium #Dynamic_Programming #Math #Tree #Binary_Tree #Binary_Search_Tree
// #Dynamic_Programming_I_Day_11 #Big_O_Time_O(n)_Space_O(1)
// #2023_10_03_Time_45_ms_(96.00%)_Space_42.9_MB_(25.33%)

function numTrees(n: number): number {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Depth_First_Search #Tree #Binary_Tree
// #Binary_Search_Tree #Data_Structure_I_Day_14_Tree #Level_1_Day_8_Binary_Search_Tree
// #Udemy_Tree_Stack_Queue #Big_O_Time_O(N)_Space_O(log(N))
// #Udemy_Tree_Stack_Queue #Top_Interview_150_Binary_Search_Tree #Big_O_Time_O(N)_Space_O(log(N))
// #2023_10_03_Time_51_ms_(98.35%)_Space_47.3_MB_(61.68%)

import { TreeNode } from '../../com_github_leetcode/treenode'
Expand Down
3 changes: 2 additions & 1 deletion src/main/ts/g0101_0200/s0101_symmetric_tree/solution.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Easy #Top_100_Liked_Questions #Top_Interview_Questions #Depth_First_Search #Breadth_First_Search
// #Tree #Binary_Tree #Data_Structure_I_Day_11_Tree #Level_2_Day_15_Tree
// #Big_O_Time_O(N)_Space_O(log(N)) #2023_10_04_Time_49_ms_(98.54%)_Space_45_MB_(59.02%)
// #Top_Interview_150_Binary_Tree_General #Big_O_Time_O(N)_Space_O(log(N))
// #2023_10_04_Time_49_ms_(98.54%)_Space_45_MB_(59.02%)

import { TreeNode } from '../../com_github_leetcode/treenode'

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// #Medium #Top_100_Liked_Questions #Top_Interview_Questions #Breadth_First_Search #Tree
// #Binary_Tree #Data_Structure_I_Day_11_Tree #Level_1_Day_6_Tree #Udemy_Tree_Stack_Queue
// #Big_O_Time_O(N)_Space_O(N) #2023_10_04_Time_60_ms_(97.47%)_Space_47_MB_(77.89%)
// #Top_Interview_150_Binary_Tree_BFS #Big_O_Time_O(N)_Space_O(N)
// #2023_10_04_Time_60_ms_(97.47%)_Space_47_MB_(77.89%)

import { TreeNode } from '../../com_github_leetcode/treenode'

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
// #Easy #Top_100_Liked_Questions #Top_Interview_Questions #Depth_First_Search #Breadth_First_Search
// #Tree #Binary_Tree #Data_Structure_I_Day_11_Tree
// #Programming_Skills_I_Day_10_Linked_List_and_Tree #Udemy_Tree_Stack_Queue
// #Big_O_Time_O(N)_Space_O(H) #2023_10_04_Time_51_ms_(97.14%)_Space_46.1_MB_(68.29%)
// #Top_Interview_150_Binary_Tree_General #Big_O_Time_O(N)_Space_O(H)
// #2023_10_04_Time_51_ms_(97.14%)_Space_46.1_MB_(68.29%)

import { TreeNode } from '../../com_github_leetcode/treenode'

Expand Down
Loading
Loading