Menu
CoddyTech

Sort Colors

빨강, 흰색, 파랑과 같은 세 가지 색을 나타내는 0, 1 또는 2 값만 들어 있는 배열 nums가 주어집니다. 배열을 재배열해 모든 0이 먼저 오고, 그다음 모든 1이 오고, 마지막으로 모든 2가 오도록 한 뒤 반환하세요. 라이브러리의 정렬 함수를 사용하지 않고 해결하세요.

함수

sortColors(nums: integer-array) → integer-array
numsinteger-array
색상은 각각 0, 1 또는 2
반환값integer-array
같은 값들을 0부터 모두 나열한 다음, 1을 모두 나열하고, 그다음 2를 모두 나열합니다

제약 조건

  • 1 ≤ nums.length ≤ 1.5 × 104
  • 모든 nums[i]는 0, 1 또는 2입니다.
  • 색상이 없을 수도 있고, 배열에 단일 색상만 들어 있을 수도 있습니다.

예제

입력
nums = [2, 1, 0, 2, 0, 1, 1]
출력
[0, 0, 1, 1, 1, 2, 2]
설명
배열에는 0이 두 개, 1이 세 개, 2가 두 개 있으므로 결과도 정확히 같습니다. 0이 두 개, 그다음 1이 세 개, 그리고 2가 두 개입니다.
challenge icon

후속 질문

배열의 길이보다 훨씬 작은 k개의 색상이 있다면 무엇을 바꾸시겠어요?

코드 초기화
def sortColors(nums):
    # 여기에 코드를 작성하세요

테스트 #1

테스트 #2

테스트 #3

인자

nums = [2, 1, 0, 2, 0, 1, 1]

예상 출력

[0, 0, 1, 1, 1, 2, 2]