오름차순으로 정렬이 된 두 배열이 주어지면 두 배열을 오름차순으로 합쳐 출력하는 프로그램
을 작성하세요.
Input1 | Input2 | Output |
---|---|---|
[1,3,5] | [2,3,6,7,9] | [1,2,3,3,5,6,7,9] |
sort
로 오름차순으로 정렬하면 풀이 자체는 쉽겠지만, 이미 정렬되어있는 배열을 또 정렬해야 한다는 점에서 효율성이 좋지 않다.const solution = (array1, array2) => {
let lIndex = 0;
let rIndex = 0;
const result = [];
while(true){
let lPointer = array1[lIndex];
let rPointer = array2[rIndex];
if(!lPointer && !rPointer) break;
if(lPointer <= rPointer || !rPointer) {
result.push(lPointer);
lIndex++;
}
if(rPointer <= lPointer || !lPointer) {
result.push(rPointer);
rIndex++;
}
}
return result;
}