Hướng dẫn và mô phỏng thuật toán sắp xếp Insertion Sort

  • Code Vui
  • 06/10/2020
  • Lượt xem: 3,246

Sắp xếp chèn (insertion sort) là một thuật toán sắp xếp bắt chước cách sắp xếp quân bài của những người chơi bài. Muốn sắp một bộ bài theo trật tự người chơi bài rút lần lượt từ quân thứ 2, so với các quân đứng trước nó để chèn vào vị trí thích hợp.

Sau đây là mô phỏng thuật toán Insertion Sort
Tạo dãy số ngẫu nhiên để mô phỏng sắp xếp
Tạo dãy số
Mã nguồn được thực hiện trên javascript
var InsertionSort = function ()
{
    $.extend(this, new SortX());

    this.onCreateScripts = function (array, scripts)
    {
        var $this = this;

        var addScript = function (a1, a2, action)
        {
            scripts.push($this.createScript0(a1, a2)); // Script lấy ra 2 số cần so sánh
            scripts.push($this.createScript1(a1, a2)); // Script để thực hiện so sánh giữa 2 số
            return action();
        }

        var j, last;
        for (var i = 1; i < array.length; i++)
        {
            last = array[i];
            j = i;
            
            while ((j > 0) && addScript(array[j - 1], last, () => array[j - 1].number > last.number))
            {                    
                var a1 = array[j - 1];
                array[j] = a1;

                scripts.push($this.createScript2(a1, last));

                j = j - 1;
            }

            array[j] = last;                
        }
    }
}

var pageSortX = new PageSortX();
pageSortX.sortX = new InsertionSort();
pageSortX.start();

Sơn 20

Nếu bạn thấy nội dung chia sẻ này có ích với bạn hãy Donate để tạo động lực cho tôi viết các bài viết tiếp theo nhé. Cảm ơn nhiều !!!!

Bài viết liên quan

Hướng dẫn và mô phỏng thuật toán sắp xếp Quick Sort

Thực hiện phân chia mảng thành 2 mảng nhỏ và sắp xếp so với một phần tử chốt.

04/10/2020 Xem chi tiết
Hướng dẫn và mô phỏng thuật toán sắp xếp Bubble sort

Đây là thuật toán sắp xếp cơ bản nhất dành cho người mới học lập trình

03/09/2020 Xem chi tiết

Bài viết cùng chuyên mục

Code javascript mô phỏng 50 xe của một xí nghiệp taxi chạy online trên bản đồ

Mô phỏng hiển thị xe chạy theo thời gian thực, sử dụng thư viện bản đồ leafletjs.

15/11/2020 Xem chi tiết
Code mô phỏng lộ trình của xe taxi chạy trên bản đồ

Dùng thư viện leafletjs để thay cho google map api mô phỏng lộ trình xe chạy.

04/11/2020 Xem chi tiết
Mô phỏng cách tính nhanh từ năm dương lịch sang năm âm lịch

Tính nhanh năm âm lịch từ năm 1900 tới nay gồm 2 bước nhẩm tính Can, Chi. Tôi 1983 nhẩm nhanh là Quý Hợi

25/10/2020 Xem chi tiết
Hướng dẫn và mô phỏng thuật toán sắp xếp Selection Sort

Sắp xếp chọn là một thuật toán sắp xếp đơn giản, dựa trên việc so sánh tại chỗ.

17/10/2020 Xem chi tiết
Mô phỏng tính nhẩm nhanh một số nhân với 99

Cách tính nhanh nhân một số có 2 chữ số với 99

03/10/2020 Xem chi tiết
Mô phỏng phép tính nhân 2 số bé hơn và gần bằng 100

Phương pháp tính nhẩm siêu nhanh với 2 số bé hơn và gần bằng 100.

18/09/2020 Xem chi tiết
{"nalias":"huong-dan-va-mo-phong-thuat-toan-sap-xep-insertion-sort","lang":"2","cattype":"0","catId":"9","UrlEngine":"UrlNewsEngine","site":"1"}