Học Python - Bài 49 In ra các số nguyên tố trong mảng và tổng của chúng
Giới Thiệu
Cách 1: Sử Dụng Thuật Toán Sắp Xếp Nổi Bọt (Đơn Giản)
# Hàm sắp xếp mảng theo thứ tự tăng dần bằng Sắp xếp nổi bọt def sap_xep_noi_bot(mang): n = len(mang) for i in range(n - 1): for j in range(n - 1 - i): if mang[j] > mang[j + 1]: mang[j], mang[j + 1] = mang[j + 1], mang[j] # Hoán đổi vị trí # Nhập số lượng phần tử của mảng n = int(input("Nhập số phần tử của mảng: ")) mang = [int(input(f"Nhập phần tử thứ {i+1}: ")) for i in range(n)] # Gọi hàm sắp xếp sap_xep_noi_bot(mang) print("Mảng sau khi sắp xếp tăng dần:", mang)
Giải Thích:
Cách 2: Sử Dụng Thuật Toán Sắp Xếp Nhanh (Tối Ưu Hóa)
# Hàm sắp xếp mảng theo thứ tự tăng dần bằng Sắp xếp nhanh def sap_xep_nhanh(mang): if len(mang) <= 1: return mang chot = mang[len(mang) // 2] # Chọn phần tử làm chốt trai = [x for x in mang if x < chot] giua = [x for x in mang if x == chot] phai = [x for x in mang if x > chot] return sap_xep_nhanh(trai) + giua + sap_xep_nhanh(phai) # Nhập số lượng phần tử của mảng n = int(input("Nhập số phần tử của mảng: ")) mang = [int(input(f"Nhập phần tử thứ {i+1}: ")) for i in range(n)] # Gọi hàm sắp xếp mang_sap_xep = sap_xep_nhanh(mang) print("Mảng sau khi sắp xếp tăng dần:", mang_sap_xep)
Giải Thích:
So Sánh Hai Cách
Phương pháp | Độ phức tạp | Hiệu suất |
Sắp xếp nổi bọt | O(n²) | Chậm với mảng lớn |
Sắp xếp nhanh | O(n log n) | Nhanh hơn, tối ưu hơn |
Ứng Dụng
Kết Luận
Cả hai thuật toán đều giúp sắp xếp mảng theo thứ tự tăng dần. Nếu bạn làm việc với dữ liệu nhỏ, Sắp xếp nổi bọt có thể đủ dùng. Nhưng nếu xử lý dữ liệu lớn, Sắp xếp nhanh là lựa chọn tối ưu. Hãy thử nghiệm và lựa chọn thuật toán phù hợp cho từng trường hợp cụ thể!
Khóa học Python online từ cơ bản đến nâng cao
2 Đề thi học sinh giỏi Tin học THCS cấp tỉnh Tiền Giang có đáp án SỞ…
1 Đề Thi Học Sinh Giỏi Tin học THCS cấp Tỉnh Tiền Giang có đáp…
Phần 1: Các bài tập dễ và cơ bản làm được các bài này các…
100 triệu là mức lương của lập trình Python vì sao? 1. Vì sao Python…
Bài 71: Đổi tất cả ký tự trong một chuỗi thành ký tự thường bằng…
Bài 26 - Tính Tổng Những Số Chia Hết Cho 3 và 5 bằng Python…
This website uses cookies.