11/24/2019 문제 의 재탕
정수 배열(int array)이 주어지면 0이 아닌 정수 순서를 유지하며 모든 0을 배열 오른쪽 끝으로 옮기시오. 단, 시간복잡도는 O(n), 공간복잡도는 O(1)여야 합니다.
[0, 5, 0, 3, -1]
[5, 3, -1, 0, 0]
[3, 0, 3]
[3, 3, 0]
void zerosToEnd(int in[], int out[], int n) {
int i, idx;
for (i = 0, idx = 0 ; i < n; i++) {
if (in[i] == 0) {
out[idx++] = in[i];
}
}
for (i = idx; i < n; i++) {
out[i] = 0;
}
}