Selection sort là gì

     
1. Overview (Tổng Quan)

Là một xây dựng viên hẳn những bạn người nào cũng đã từng phải áp dụng thuật toán sắp xếp. Vào SERI về thuật toán tra cứu kiếm này họ sẽ khám phá tư tưởng của các loại thuật toán thu xếp cơ bản nhất: Bubble Sort, Insertion Sort, Merge Sort, Heap Sort, QuickSort, Radix Sort, Counting Sort, Bucket Sort, ShellSort. Trong bài viết này mình họ sẽ tò mò về Selection Sort :

Thuật toán Selection Sort là gì?Các thành phần chủ yếu của thuật toán Selection Sort.

Bạn đang xem: Selection sort là gì

Cách thực thi thuật toán Selection Sort qua ví dụ.

Toàn bộ ví dụ bản thân sẽ sử dụng python giúp chúng ta dễ hiểu và dễ cố gắng bắt. Let"s bởi vì it ^^

2. Selection Sort (Sắp Xếp Chọn)

Thuật toán Selection Sort bố trí một mảng bằng cách liên tục search phần tử bé dại nhất (xét theo sản phẩm công nghệ tự tăng dần) từ phần chưa được sắp xếp và đặt nó sống đầu. Thuật toán duy trì hai mảng bé trong một mảng nhất định.

Mảng nhỏ đã được sắp xếp.

Xem thêm: Tổng Hợp Các Cách Ứng Tiền Sim Viettel Khi Chưa Đủ Điều Kiện Mới 2022

Mảng con còn lại chưa được sắp tới xếp.

Trong các lần lặp lại thu xếp lựa chọn, bộ phận tối thiểu (xét theo trang bị tự tăng dần) tự mảng con không được sắp xếp sẽ tiến hành chọn cùng chuyển mang đến mảng bé đã chuẩn bị xếp.

Xem thêm: Include Là Gì Trong Tiếng Anh? Cách Dùng Include Trong Tiếng Anh

Ví dụ sau giải thích quá trình trên:

//Dãy không sắp xếparr<> = 64 25 12 22 11// kiếm tìm phần tử bé bỏng nhất trong hàng arr<0...4>// đưa bộ phận đó lên đầu dãy arr<0...4>**11** 25 12 22 64// tìm phần tử nhỏ nhắn nhất trong dãy arr<1...4>// đưa thành phần đó lên đầu hàng arr<1...4>11 **12** 25 22 64// tìm phần tử nhỏ nhắn nhất trong hàng arr<2...4>// đưa phần tử đó lên đầu hàng arr<2...4>11 12 **22** 25 64// kiếm tìm phần tử bé bỏng nhất trong dãy arr<3...4>// đưa bộ phận đó lên đầu dãy arr<3...4>11 12 22 **25** 64 Dưới đó là sơ đồ khối theo từng bước tiến hành của thuật toán trên

*

Dưới đó là cách thiết lập thuật toán bằng ngôn từ Python:

import sysA = <64, 25, 12, 22, 11> for i in range(len(A)): # tra cứu kiếm phần tử nhỏ bé nhất trong dãy chưa được sắp xếp min_idx = i for j in range(i+1, len(A)): if A > A: min_idx = j # Đổi khu vực phần tử bé nhất với bộ phận đầu tiên A, A = A, A # thử nghiệm Kết Quảprint ("Sorted array")for i in range(len(A)): print("%d" %A), Đây là kết quả

Sorted array: 11 12 22 25 64Thuật toán Selection Sort là một trong những thuật toán khá dễ dàng khi mua đặt. Thuật toán này còn có độ tinh vi là O(n2) vì tất cả 2 vòng lặp.

3. Conclusion (Kết Luận)

Trong bài viết này bọn họ đã tò mò được thuật toán sắp xếp chọn (Selection Sort). Bao gồm cài nhìn tổng quan lại về thuật toán. Cách cài đặt thuật toán bằng ngữ điệu Python. Độ thức tạp thuật toán. Rất mong muốn đã đem lại cho mình đọc những kiến thức và kỹ năng thú vị.Nếu thấy hay chúng ta nhớ bấm follow bản thân nhé !!