Javascript - Thuật toán Insertion sort
Thuật toán insertion sort
Sắp xếp chèn là một thuật toán sắp xếp đơn giản hoạt động tương tự như cách bạn sắp xếp các thẻ chơi trong tay. Mảng hầu như được chia thành một phần được sắp xếp và một phần chưa được sắp xếp. Các giá trị từ phần chưa được sắp xếp được chọn và đặt ở vị trí chính xác trong phần được sắp xếp.
Ví dụ:
Mã nguồn:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Sorts an array of numbers, using the insertion_Sort algorithm.</title>
<script>
const insertion_Sort = (nums) => {
for (let i = 1; i < nums.length; i++) {
let j = i - 1
let temp = nums[i]
while (j >= 0 && nums[j] > temp) {
nums[j + 1] = nums[j]
j--
}
nums[j+1] = temp
}
return nums
}
document.write(insertion_Sort([3, 0, 2, 5, -1, 4, 1]));
document.write(insertion_Sort([2,6,5,12,-1,3,8,7,1,-4,0,23,1,-55,20,37,54,210,-23,7,483,9339,29,-3,90,-2,81,54,7372,-92,93,93,18,-43,21]));
</script>
</head>
<body>
</body>
</html>
Lưu đồ thuật toán: