인프런 커뮤니티 질문&답변
idx를 선언해줘야 하는 이유..
작성
·
310
4
안녕하세요?
idx를 선언해줘야 하는 이유가 모르겠어요..
idx를 생략하고 이렇게 코드를 짜면 안되나요?

퀴즈
66%나 틀려요. 한번 도전해보세요!
선택 정렬 알고리즘의 핵심 과정은 무엇일까요?
인접한 두 요소를 비교하여 순서가 맞지 않으면 교환합니다.
정렬되지 않은 부분에서 가장 작은 값을 찾아 정렬된 부분의 올바른 위치로 옮깁니다.
배열을 반으로 나누고 각 부분을 재귀적으로 정렬한 후 병합합니다.
하나의 요소를 정렬된 하위 배열의 올바른 위치에 삽입합니다.
답변 1
4
김태원
지식공유자
안녕하세요^^
위에 코드 같은 경우 j for문이 돌면서 arr[j]<arr[i]가 참일경우 매번 arr[i]와 arr[j]의 값을 교환합니다.
idx를 쓰는 영상의 방법은 j for문이 끝나고 나서 한 번 두 값의 교환을 합니다.
즉 idx를 쓰는 이유는 두 값의 교환 횟수를 최소화하기 위해서입니다.





