새소식

💻 Programming (프로그래밍)/C++

[C++][구현] moveZeros (배열 문제)

  • -

특정 숫자를 배열의 시작 혹은 끝으로 옮기는 문제입니다.

 

이때, 시간복잡도는 O(N) 시간을 사용하는 것을 목표로 합니다.

 

void moveZeros(int nums[], int size) {
	
	int wIdx = 0;
	for (int idx = 0; idx < size; idx++) {
		if (nums[idx] != 0) {
			swap(nums[wIdx], nums[idx]);
			wIdx++; 
		}
	}
}

 

 

moveZeors() 함수의 핵심은

wIdx, Idx를 구분을 잘 하는게 핵심인 듯 합니다.

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.