Please enable JavaScript.
Coggle requires JavaScript to display documents.
Tổng kết:THUẬT TOÁN TÌM KIẾM VÀ SẮP XẾP - Coggle Diagram
Tổng kết:THUẬT TOÁN TÌM KIẾM VÀ SẮP XẾP
Thuật toán sắp xếp chọn(Selection sort)
Khái niệm
Là một thuật toán sắp xếp đơn giản.
đc chia thành 2 phần:
phần được sắp xếp (sorted list)
phần chưa được sắp xếp
các bước giải
Bước 1: Thiết lập MIN về vị trí 0
Bước 2: Tìm kiếm phần tử nhỏ nhất trong danh sách
Bước 3: Tráo đổi với giá trị tại vị trí MIN
Bước 4: Tăng MIN để trỏ tới phần tử tiếp theo
Bước 5: Lặp lại cho tới khi toàn bộ danh sách đã được sắp xếp
Thuật toán sắp xếp chèn
xây dựng dần một mảng đã được sắp xếp bằng cách lấy từng phần tử từ mảng chưa được sắp xếp và chèn nó vào đúng vị trí trong mảng đã sắp xếp
là một thuật toán sắp xếp đơn giản
def insertion_sort(arr):
Duyệt từ phần tử thứ 2 đến hết mảng
for i in range(1, len(arr)):
key = arr[i] # Phần tử cần chèn
j = i - 1
Dịch chuyển các phần tử lớn hơn key sang phải
while j >= 0 and arr[j] > key:
arr[j + 1] = arr[j]
j -= 1
Chèn key vào vị trí thích hợp
arr[j + 1] = key
Ví dụ sử dụng
arr = [12, 11, 13, 5, 6]
insertion_sort(arr)
print("Mảng sau khi sắp xếp:", arr)
Thuật toán nổi bọt
là một thuật toán sắp xếp đơn giản dựa trên việc lặp đi lặp lại so sánh từng cặp phần tử liền kề và hoán đổi chúng nếu chúng không đúng thứ tự
def bubble_sort(arr):
n = len(arr)
Lặp qua từng phần tử trong mảng
for i in range(n):
Lặp từ đầu đến phần tử cuối chưa sắp xếp
for j in range(0, n - i - 1):
Nếu phần tử hiện tại lớn hơn phần tử kế tiếp thì đổi chỗ
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
Ví dụ sử dụng
arr = [64, 34, 25, 12, 22, 11, 90]
bubble_sort(arr)
print("Mảng sau khi sắp xếp:", arr)
Chủ quản:Mai Hoàng Nam và Ngô Bách Bảo Minh