전체 글(115)
-
[Leetcode] 153. Find Minimum in Rotated Sorted Array
class Solution: def findMin(self, nums: List[int]) -> int: left, right = 0, len(nums) - 1 mid = -1 while left nums[mid]: return nums[mid] return nums[mid]
2023.05.02 -
[Leetcode] 74. Search a 2D Matrix
class Solution: def searchMatrix(self, matrix: List[List[int]], target: int) -> bool: for line in matrix: left, right = 0, len(line) - 1 while left
2023.05.01 -
[Leetcode] 33. Search in Rotated Sorted Array
class Solution: def search(self, nums: List[int], target: int) -> int: left, right = 0, len(nums) - 1 while left
2023.05.01 -
[Leetcode] 34. Find First and Last Position of Element in Sorted Array
class Solution: def searchRange(self, nums: List[int], target: int) -> List[int]: left, right = 0, len(nums) - 1 answer = [-1, -1] while left nums[left]: left += 1 elif target == nums[left]: answer[0] = left if target < nums[right]: right -=1 elif target == nums[right]: answer[1] = right return answer
2023.05.01 -
[Leetcode] 17. Letter Combinations of a Phone Number
Solution 1. product from itertools import product class Solution: def letterCombinations(self, digits: str) -> List[str]: phone = { "2": "abc", "3": "def", "4": "ghi", "5": "jkl", "6": "mno", "7": "pqrs", "8": "tuv", "9": "wxyz" } values = [phone[d] for d in digits] comb = [''.join(val) for val in product(*values)] return comb if len(comb) != 1 else [] Solution 2. BFS class Solution: def..
2023.05.01 -
[Leetcode] 16. 3Sum Closest
15. 3Sum 과 유사 class Solution: def threeSumClosest(self, nums: List[int], target: int) -> int: nums.sort() n = len(nums) diff = float('inf') res = 0 for i in range(n - 2): left = i + 1 right = n - 1 while left < right: s = nums[left] + nums[right] + nums[i] if abs(target - s) < diff: diff = abs(target - s) res = s if s < target: left += 1 else: right -= 1 return res
2023.05.01