과정
1. 두 인접 요소를 비교
2. 만약 배열의 n번째 인덱스 값보다 n+1번째 인덱스 값이 더 클 경우 n번째 값과 n+1번째 값을 서로 교환
3. 이를 (전체 배열 길이 - 1)만큼 반복
/**
* 버블 정렬
* ▣ 문제
* N개이 숫자가 입력되면 오름차순으로 정렬하여 출력하는 프로그램을 작성하세요. 정렬하는 방법은 버블정렬입니다.
* ▣ 입력설명
* 첫 번째 줄에 자연수 N(1<=N<=100)이 주어집니다.
* 두 번째 줄에 N개의 자연수가 공백을 사이에 두고 입력됩니다. 각 자연수는 정수형 범위 안에 있습니다.
* ▣ 출력설명
* 오름차순으로 정렬된 수열을 출력합니다.
* ▣ 입력예제 1
* 6
* 13 5 11 7 23 15
* ▣ 출력예제 1
* 5 7 11 13 15 23
*/
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] > answer[j+1]) {
temp = answer[j];
answer[j] = answer[j+1];
answer[j+1] = temp;
}
}
}
return answer;
}
console.log(solution());
jimmy48 - 버블 정렬 (이미지 참고)
https://velog.io/@jimmy48/%EB%B2%84%EB%B8%94%EC%A0%95%EB%A0%AC