Special Sort(구글 인터뷰) - Node.js

프동프동·2022년 8월 3일
0

알고리즘 - Node.js

목록 보기
78/116
post-thumbnail

Special Sort(구글 인터뷰)


문제

N개의 정수가 입력되면 당신은 입력된 값을 정렬해야 한다.
음의 정수는 앞쪽에 양의정수는 뒷쪽에 있어야 한다. 또한 양의정수와 음의정수의 순서에는 변함이 없어야 한다.

입력

첫 번째 줄에 정수 N(5<=N<=100)이 주어지고, 그 다음 줄부터 음수를 포함한 정수가 주어진 다. 숫자 0은 입력되지 않는다.

출력

정렬된 결과를 출력한다.

입력 예시 1

8
1 2 3 -3 -2 5 6 -6

출력 예시 1

3 -2 -6 1 2 3 5 6


해결방법

function solution(sample_data) {
  let answer = sample_data;
  for (let i = 0; i < sample_data.length - 1; i++) {
    for (let j = 0; j < sample_data.length - i - 1; j++) {
      if (sample_data[j] > 0 && sample_data[j + 1] < 0) {
        let temp = sample_data[j];
        sample_data[j] = sample_data[j + 1];
        sample_data[j + 1] = temp;
      }
    }
  }
  return sample_data;
}

let sample_data = [1, 2, 3, -3, -2, 5, 6, -6];
console.log(solution(sample_data));

profile
좋은 개발자가 되고싶은

0개의 댓글