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
6 BÀI TẬP C++ CHUẨN THI HỌC SINH GIỎI MỚI NHẤT 2026 Tài liệu này…
1. Giới thiệu về C++ C++ là ngôn ngữ lập trình được phát triển bởi…
Khóa Học Tin Học Online Thầy Dân: Luyện Thi Chuyên Tin & Tin Văn Phòng…
🚀 Giải Chi Tiết Đề Thi HSG Tin Học THCS Bình Phước (Có Code Python…
Bạn đang tìm kiếm nguồn tài liệu ôn thi học sinh giỏi Tin học lớp…
Phần 2: Tải ngay 200 Bài lập trình Python có lời giải cơ bản đến…
This website uses cookies.