알고리즘 2

Merge Sort(합병 정렬) 알고리즘

Merge Sort 분할, 정렬, 합병 3가지의 단계로 이루어진 알고리즘으로 배열의 아이템이 0개 혹은 1개일경우 어떠한 값이 오든 배열은 정렬된 상태인것을 이용하는 방식이다. 전체 배열을 0 혹은 1개의 아이템이 남을때까지 계속해서 2분할 한후 1개의 아이템을 가진 배열 2쌍씩 비교하여 정렬후 합병하며 전체 배열이 정렬될때까지 계속해서 비교후 정렬, 합병을 반복한다. 병합 함수 Merge Sort의 마지막단계인 정렬과 합병을 수행할 함수를 먼저 만들어 준다. function merge(arr1, arr2) { let result = []; let i = 0; let j = 0; while (i < arr1.length && j < arr2.length) { if (arr1[i] < arr2[j]) { ..

기본 정렬 알고리즘(Bubble, Selection, Insertion sorts)

Bubble Sort (버블 정렬) 배열의 첫 아이템을 시작으로 다음 아이템과 비교후 정렬, 이후 두번째 아이템과 그 다음 아이템을 비교후 정렬, 이렇게 순차적으로 모든 비교를 마친후 다시 배열의 첫 아이템과 다음 아이템을 비교후 정렬하며 반복적으로 이루어 진다. 버블 정렬 예시 function bubbleSort(arr) { let swapCheck; for (let i = arr.length; i > 0; i--) { swapCheck = true; for (let j = 0; j arr[j + 1]) { let tem = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = tem; swapCheck = false; } } i..