Học Python - Bài 54 Tìm số nguyên nhỏ thứ 3 trong mảng
DANH SÁCH TÓM TẮT:
Giới Thiệu
Trong bài viết này, chúng ta sẽ viết chương trình Python để tìm số nguyên nhỏ thứ 3 trong một mảng số nguyên.
Cách Thực Hiện
Chương Trình Python
# Hàm tìm số nhỏ thứ 3 trong mảng def tim_so_nho_thu_ba(mang): if len(mang) < 3: return None # Không đủ số lượng phần tử mang_khong_trung = sorted(set(mang)) # Sắp xếp và loại bỏ số trùng lặp return mang_khong_trung[2] if len(mang_khong_trung) >= 3 else None # 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)] # Tìm số nhỏ thứ 3 so_nho_thu_ba = tim_so_nho_thu_ba(mang) print("Số nguyên nhỏ thứ 3 trong mảng:", so_nho_thu_ba)
# Hàm tìm số nhỏ thứ 3 tối ưu def tim_so_nho_thu_ba_toi_uu(mang): if len(mang) < 3: return None # Không đủ số lượng phần tử so_nho_nhat = so_nho_nhi = so_nho_thu_ba = float('inf') for so in mang: if so < so_nho_nhat: so_nho_thu_ba, so_nho_nhi, so_nho_nhat = so_nho_nhi, so_nho_nhat, so elif so_nho_nhat < so < so_nho_nhi: so_nho_thu_ba, so_nho_nhi = so_nho_nhi, so elif so_nho_nhi < so < so_nho_thu_ba: so_nho_thu_ba = so return so_nho_thu_ba if so_nho_thu_ba != float('inf') else None # 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)] # Tìm số nhỏ thứ 3 so_nho_thu_ba = tim_so_nho_thu_ba_toi_uu(mang) print("Số nguyên nhỏ thứ 3 trong mảng:", so_nho_thu_ba)
So Sánh Hai Cách
Phương pháp | Độ phức tạp | Ưu điểm | Nhược điểm |
Dùng sorted() + set() | O(n log n) | Code ngắn gọn, dễ hiểu | Hiệu suất thấp hơn khi mảng lớn |
Vòng lặp duy nhất | O(n) | Tối ưu hơn về hiệu suất và bộ nhớ | Cần nhiều dòng code hơn |
Ví Dụ Chạy Chương Trình
Nhập số phần tử của mảng: 6
Nhập phần tử thứ 1: 10
Nhập phần tử thứ 2: 20
Nhập phần tử thứ 3: 5
Nhập phần tử thứ 4: 8
Nhập phần tử thứ 5: 12
Nhập phần tử thứ 6: 15
Số nguyên nhỏ thứ 3 trong mảng: 10
Kết Luận
Bài viết đã hướng dẫn cách tìm số nguyên nhỏ thứ 3 trong mảng bằng hai phương pháp:
Hy vọng bài viết hữu ích cho bạn!
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.