본문 바로가기

코딩 테스트/leetcode23

Range Sum of BST 첫번째 코드 사실 트리에 대해서는 이해하지만 트리를 만드는 코드와 해당 트리를 다루는 방법을 몰라서 GPT를 참고했다.이렇게 코드를 작성해도 아직 확실한 이해는 잘 모르겠다...어떻게 트리를 짜야하는지.... 다뤄야 하는지.... # Definition for a binary tree node. class TreeNode:     def __init__(self, val=0, left=None, right=None):         self.val = val         self.left = left         self.right = right class Solution:     def rangeSumBST(self, root: Optional[TreeNode], low: int, high: int.. 2024. 6. 14.
Search Insert Position 첫번째 코드 단순하게 직접 찾으면서 비교하면 된다라고 생각했다. class Solution:    def searchInsert(self, nums: List[int], target: int) -> int:        count = 0        for i in nums:            if i                 count += 1            elif i == target:                return count            elif i > target:                return count 시간초과두번째 코드 시간 초과가 문제가 되므로 찾는 것을 더 적게 해야한다.이때 이진탐색을 이용하면 탐색에 더 적은 시간이 걸린다. class Solutio.. 2024. 6. 13.
Counting Bits 첫번째 코드 bin()함수를 이용하여 이진수로 표현한 다음그 이진수에 들어 있는 1의 개수를 센 후 더하여 answer 리스트에 더하는 방법을 이용한다. class Solution:     def countBits(self, n: int) -> List[int]:         answer = []         for i in range(n+1):             count = 0             s = bin(i)[2:]             for j in s:                 if j == '1':                     count += 1             answer.append(count)         return answer 통과!링크https://.. 2024. 6. 11.
Minimum Number Game 첫번째 코드 heap을 이용해서 순서대로 정렬한 후처음 숫자와 두번째 숫자를 뽑은 후두번쨰 숫자, 첫번째 숫자 순서대로 answer에 넣는 것이다. import heapq class Solution:     def numberGame(self, nums: List[int]) -> List[int]:         heapq.heapify(nums)         answer = []                  while len(nums) > 1:             alice = heapq.heappop(nums)             bob = heapq.heappop(nums)             answer.append(bob)             answer.append(alice)   .. 2024. 6. 5.
Maximum Product of Two Elements in an Array 첫번째 코드 굳이 answer이라는 리스트를 만들지 말고 Max값을 비교해가면서 Max 값만을 갖고 움직이자! class Solution:     def maxProduct(self, nums: List[int]) -> int:         Max = 0                  for i in range(len(nums)):             for j in nums[i+1:]:                 Max = max(Max, (nums[i]-1)*(j-1))                  return Max 통과!링크https://github.com/ornni/leetcode/tree/main/1464-maximum-product-of-two-elements-in-an-array l.. 2024. 5. 27.
728x90