Search

Sort Array By Parity

문제 설명 : 정렬되지 배열이 주어졌을 때, 짝수와 홀수가 각각 좌우로 구분된 배열로 반환한다.
풀이 방법
배열 양쪽에서 중앙쪽으로 순회하면서, 좌측에 홀수 / 우측에 짝수인 경우 swap 해주면서 정렬하였다.
시간복잡도 : O(N)O(N)
성공 코드
class Solution: def sortArrayByParity(self, nums: List[int]) -> List[int]: left = 0 right = len(nums) - 1 while left < right: # 홀수가 왼쪽 / 짝수가 오른쪽일 경우 swap if nums[left] % 2 == 1 and nums[right] % 2 == 0: nums[left], nums[right] = nums[right], nums[left] left += 1 right -= 1 if nums[left] % 2 == 0: left += 1 if nums[right] % 2 == 1: right -= 1 return nums
Python
복사