배열을 정렬하는 간단하면서 기본적인 비교 정렬 알고리즘입니다.
function selectionSort(data) {
const length = data.length;
for (let i = 0; i < length - 1; i++) {
let minIndex = i;
for (let j = i + 1; j < length; j++) {
if (data[j] < data[minIndex]) {
minIndex = j;
}
}
if (minIndex !== i) {
[data[i], data[minIndex]] = [data[minIndex], data[i]];
}
}
return data;
}
const result = selectionSort([10, 5, 8, 2, 1, 6]);
console.log(result); // [1, 2, 5, 6, 8, 10]
import random
data = random.sample(range(100), 10)
print(data)
for i in range(len(data)-1):
lowest = i
for j in range(i+1, len(data)):
print(i, j, '|', data[lowest], data[j])
if data[lowest] > data[j]:
lowest = j
print('Lowest:', data[lowest])
data[i], data[lowest] = data[lowest], data[i]
print(data)