[TIL]200918 solo day Toy Problem

1829 단어 TILCodingCoding

BubbleSort

Bubble sort 방식으로 배열을 인자로 받아 크기 순서대로 정렬된 배열을 반환하는
함수를 만드세요. 자바스크립트의 내장 함수 (Array.prototype.sort)는 사용을 금지합니다.

BubbleSort는 컴퓨터 과학의 가장 기본적인 알고리즘으로
첫 번째 요소와 두 번째 요소를 비교해서 첫 번째 요소가 두 번째 요소보다 크면 두 요소의 위치를 바꾼다.
그 다음 두 번째 요소와 세 번째 요소를 비교하고 자리를 바꾼다. 이런 과정을 마지막까지 반복하게 되면 가장 큰 요소가 가장 마지막으로 밀려나게 되는데, 이 모습이 거품이 밀려 올라가는 모습으로 보여져서 BubbleSort라고 불린다 시각적으로 보자면 아래와 같다

맨 처음에는 재귀를 통해 풀어내려고 했으나 뭔가 생각을 잘못해서 그런지 잘 되지 않아서 이중반복문으로 풀어냈다
이중반복문으로 이 알고리즘을 구현할 때 조건을 잘 맞춰줘야했다

for(let i = 0; i<arr.length; i++){
  for(let j = 0; j<arr.length; j++{
  }
}

에서 j가 i보다 클 때와 j가 i보다 작을 때에 조건을 제대로 맞추지 않으면 내가 원하던 버블정렬이 나오지 않았다.

앞으로 의사코드를 작성할 때 조금 더 조건을 자세하게 나눠서 작성해야겠다.

좋은 웹페이지 즐겨찾기