인프런 커뮤니티 질문&답변
sort 관련 질문있습니다.
해결된 질문
작성
·
258
0
마지막에 scores[i] 와 scores[minIndex]의 값을 바꿔주는 이유는 무엇인가요?
굳이 바꾸지 않고 그냥 scores[i] = scores[minIndex]; 로 socres[i]에 값만 넣어주고 scores[minIndex]는 없어져도 상관 없는 것 아닌가요?
퀴즈
51%나 틀려요. 한번 도전해보세요!
배열(Array)의 가장 기본적인 특징 중 하나로, 생성될 때 정해진 크기에 대한 설명은 무엇일까요?
크기가 자동으로 늘어납니다.
필요에 따라 크기를 마음대로 바꿀 수 있습니다.
처음 정해진 크기에서 변경할 수 없습니다.
크기는 데이터를 저장하는 데 중요하지 않습니다.
답변 2
0
서로의 값을 바꿔주지 않으면 배열 내에 scores[i]의 값이 2개가 남게 됩니다.
예를 들어,
2 1 3 4 5 에서
scores[i]는 2고 scores[minIndex]는 1이 되는데
최소값을 앞으로 정렬해주고 싶은 것이므로
2 2 3 4 5가 되지 않고
1 2 3 4 5 가 되려면 scores[minIndex]에는 원래 scores[i]에 있던 값을 넣어줘야 합니다.
0
Rookiss
지식공유자
그렇게 되면 기존에 있던 값을 하나 유실하게 됩니다. 예를 들어
7 1 2 4 을 정렬할 때 i = 0이라면
1 7 2 4 이렇게 뒤바꿔줘야 하는데
scores[0]에 값만 넣어주면 1 1 2 4 가 됩니다.





