Skip to content

Using Python or Java to answer leetcode problems

Notifications You must be signed in to change notification settings

wena04/Leetcode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Anthony's Leetcode Practice

Using Python or Java to answer leet code problems to prep for tech interviews

# Title Solution Time/Space Complexity Methods/Notes Date Completed
1 Two Sum Java O(N)/O(N) Hashmap to see if seen the target num subtracted by current number -> return value if have May 25, 2024
14 Longest Common Prefix Java Python O(N)/O(M) for both set empty string, iterate through all the strings at once (need 2 for loops), return when i == len(s) or s[i] != strs[0][i] Apirl 04, 2024
21 Merge Two Sorted Lists Java O(N)/O(N) Creating a new linked list and add in required order June 5, 2024
118 Pascal's Triangle Java Python O(N^2)/O(N^2) Dynamic Programming -> every row is a list/array itself -> recursive calling itself to use previous row to calculate current row May 25, 2024
125 Valid Palindrome Java O(N)/O(1) Two pointers, start at each end and compare June 1, 2024
206 Reverse Linked List Java M1: O(N)/O(1)
M2: O(N)/O(N)
M1: Iteratively M2:Recursively June 5, 2024
217 Contains Duplicate Python M1: O(N^2)/O(1)
M2: O(NlogN)/O(logN)
M3: O(N)/O(N)
M1: Brute Force
M2: sort array first, compare adjacent elements
M3: put elements into HashMap -> containsKey then return true, else false
May 25, 2024
242 Valid Anagram Python M1: O(N)/O(N)
M2: O(NlogN)/O(1) but could also be said to be O(N) for space
M1: using Hashmap to count number of each character
M2: sort the string first
May 26, 2024
344 Reverse String Java O(N)/O(1) Two pointers, start at each end and swap characters June 1, 2024
671 Second Minimum Node in a Binary Tree Java O(N)/O(N) DFS -- preorder traversal but custom towards this special kind of tree -> think case by case Apirl 23, 2024
746 Min Cost Climbing Stairs Java O(N)/O(1) DP -> base case first two steps -> loop curr = cost[i] + min(first,second), first = second, second = curr Apirl 20, 2024
# Title Solution Time/Space Complexity Methods/Notes Date Completed
11 Container With Most Water Java O(N)/O(1) two pointers, starting at opposite ends, move smaller pointer after testing area June 5, 2024
33 Search in Rotated Sorted Array Java O(logN)/O(1) binary search June 5, 2024
49 Group Anagrams Python O(N)/O(N)) HashMap of charCount to the words that can make this anagram May 31, 2024
143 Reorder List Java O(N)/O(N) two pointers, one at each end but with linked lists June 5, 2024
347 Top K Frequent Elements Python O(N)/O(N)) Bucket Sort + HashMap and then loop through for highest frequencies May 31, 2024
743 Network Delay Time Python O(NLogN)/O(N)
O(E*logV) in terms of edges & vertex)
Dikjstra's Algorithm using MinHeap + stack to visit all nodes and see shortest path/weight May 20, 2024
912 Sort an Array Java O(NLogN)/O(logN) merge sort May 20, 2024
# Title Solution Time/Space Complexity Methods/Notes Date Completed
2781 Length of the Longest Valid Substring Java O(N * maxlengthofforbidden^2)/O(sum of forbidden words length) Sliding Window + brute Force June 1, 2024

About

Using Python or Java to answer leetcode problems

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published