본문 바로가기

Algorithm/JS

(3)
삽입정렬 선택정렬(O(n^2)) 버블정렬과 마찬가지로 기본적인 정렬 1번째 부터 하나씩 숫자를 선택해서 반복하면서 선택한 숫자의 위치를 찾아서 정렬하는 방식 즉 선택한 숫자보다 큰 숫자들은 오른쪽으로 한 칸씩 밀어내고 빈 자리에 선택한 숫자를 넣는 원리 이해하기 좀 복잡한 편인데 효율도 안좋아서 안쓰는게 날듯 선택한 숫자보다 큰 숫자들은 오른쪽으로 한 칸씩 밀어내고 빈 자리에 선택한 숫자를 넣는 겁니다. function insertionSort(arr) { let i=1, j, temp; for (i; i = 0 && temp < arr[j];..
선택 정렬 선택정렬(O(n^2)) 버블정렬과 마찬가지로 기본적인 정렬 0번째에 한바퀴를 돌아서 최소값을 찾아서 최소값을 0번째로 옮기고, 최소값이 있던 자리에 0번째 값을 옮긴다. 1번째에 1번째 최소값을 찾아서 1번째로 옮기고 1번째 최소값이 있던 자리에 1번째 값을 옮긴다. 이런식으로 반복 var selectionSort = function(arr) { let minIndex, temp, i, j; for (i = 0; i < arr.length - 1; i++) { minIndex = i; // 최소값 인덱스는 i로 놓고 반복 for (j = i + 1; j < arr.length; j++) { // i 다음 값부터 해서 반복 if (arr[j] < arr[minIndex]) { // 현재 위치에 담긴 값이 ..
버블 정렬과 버블정렬을 이용한 최대값, 최소값, 평균값 구하기 정렬의 기본 버블정렬(O(n^2)) 정렬 중에 가장 기본 정렬인 버블정렬이다. 앞뒤 숫자를 바꾸는 방식을 계속 반복하는 방식으로 구현된다. var arr = [100,40,30,70,10,90]; for (let i = 0; i arr[j+1]) { // 앞의 수가 더크면 const tmp = arr[j]; // 앞의 수를 임시값에 담음 arr[j] = arr[j+1]; // 앞에 뒤에껄 담음 arr[j+1] = tmp; // 뒤에 임시값을 담음 console...