Algorithm JS - Spcial Sort(버블 정렬 응용)

jiny·2022년 9월 5일
0

JavaScript Algorithm

목록 보기
3/23
post-thumbnail

Spcial Sort

  • 음수로 된 element들이 차례로 왼쪽으로 정렬되도록 하는 문제

  1. 정렬하는 방식은 기존 bubble sort와 동일
  2. 단, 인접한 요소들이 각각 양수, 음수 인 경우 그 요소들을 서로 swap
  3. 반복

소스 코드

function solution() {
     let answer = require('fs').readFileSync(__dirname+'/input.txt').toString().trim().split("\n").slice(1).join().split(' ').map(i=>Number(i));
     let temp = 0;
     for(let i = 0; i < answer.length - 1; i++) {
          for(let j = 0; j < answer.length; j++) {
          	   // 만약 인접하는 두 요소가 각각 양수, 음수인 경우
               if(answer[j] > 0 && answer[j+1] < 0) {			   
					// 두 요소를 swap
                    temp = answer[j];
                    answer[j] = answer[j+1];
                    answer[j+1] = temp;
               }
          }
     }
     return answer;
}

console.log(solution());

0개의 댓글