📝 Mã nguồn Selection Sort
function selectionSort(arr) {
// Duyệt qua từng vị trí trong mảng
for (let i = 0; i < arr.length - 1; i++) {
// Giả sử phần tử tại vị trí i là nhỏ nhất
let minIndex = i;
// Tìm phần tử nhỏ nhất trong phần chưa sắp xếp
for (let j = i + 1; j < arr.length; j++) {
// So sánh với phần tử nhỏ nhất hiện tại
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
// Hoán đổi phần tử nhỏ nhất với phần tử đầu tiên
if (minIndex !== i) {
let temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}
}
📊 Trực quan hóa
Chưa sắp xếp
Đang so sánh
Phần tử nhỏ nhất
Đã sắp xếp
Sẵn sàng để bắt đầu! Nhấn "Chạy thuật toán" để xem demo.
📜 Lịch sử thực thi
💡
Chào mừng! Nhấn "Chạy thuật toán" để bắt đầu và theo dõi từng bước thực hiện.