Problem Solving

Sort Colors

inspiring-ini 2024. 6. 12. 18:33

문제 번호, 이름: 75. Sort Colors

문제 링크: https://leetcode.com/problems/sort-colors/description

날짜: 2024/06/12

상태: 완료

 

이 문제를 고른 이유

리트코드 오늘의문제

문제 보고 처음 든 생각

5년 전에 제출한 풀이가 있었다. 보진 않았다

constance space를 써서 소트를 해라? 근데 n <= 300이다? 그냥 버블소트 하면 되는 거 아닌가.. 물론 더 빨리 풀려면 constance space를 쓰는 NlogN 소트같은걸 떠올려봐도 될 것 같다.

 

풀이 v1

  • 소요 시간 3분

버블소트!

 

class Solution:
    def sortColors(self, nums: List[int]) -> None:
        """
        Do not return anything, modify nums in-place instead.
        """
        n = len(nums)
        for i in range(n-1):
            for j in range(i+1, n):
                if nums[i] <= nums[j]:
                    continue
                else:
                    tmp = nums[i]
                    nums[i] = nums[j]
                    nums[j] = tmp

 

속도는 상위 27% 메모리는 상위 3%

다들 그냥 버블소트로 했나보다. 아니면 n이 너무 작아서 상관없었거나

추가로 쓴 메모리는 n, i, j, tmp 니까 상수 공간 맞다 

풀이 v2

  • 소요 시간 -
# v2 없음

 

 

이 문제를 풀고 얻은 것

  •  

메모

  • 너무 금방 풀었는데..?
  • 그 뭐냐 버킷소트? array elem이 3종류로 제한되어있으니까 이걸 의도하고 낸 것 같기도..

'Problem Solving' 카테고리의 다른 글

Patching Array  (1) 2024.06.16
Minimum Increment to Make Array Unique  (0) 2024.06.14
Number of Subarrays With GCD Equal to K  (0) 2024.06.02
3Sum Closest  (0) 2024.06.02
Count Triplets That Can Form Two Arrays of Equal XOR  (0) 2024.05.30