
55 Học Python – Đếm số lượng số nguyên khác nhau mới nhất
Bài 55: Đếm số lượng số nguyên khác nhau trong mảng bằng Python
Giới Thiệu
Trong bài viết này, chúng ta sẽ viết chương trình Python để đếm số lượng số nguyên khác nhau trong một mảng số nguyên.
Khuyến mãi lớn thêm danh sách 10 bài tập python rèn luyện kỹ năng và nâng cao tay nghề:
- Bài 51 : Tính trung bình các số nguyên tố trong mảng bằng Python
- Bài 52: Tìm số âm lớn nhất trong mảng bằng Python
- Bài 53: Tìm số nguyên lớn nhì trong mảng bằng Python
- Bài 54: Tìm số nguyên nhỏ thứ 3 trong mảng bằng Python
- Bài 55: Đếm số lượng số nguyên khác nhau trong mảng bằng Python
- Bài 56: Đếm số lần xuất hiện của từng số trong mảng bằng Python
- Bài 57: Tìm số nguyên xuất hiện nhiều lần nhất trong mảng bằng Python
- Bài 58 Tính trung bình cộng các số chính phương trong mảng bằng Python
- Bài 59: In ra câu “Chao HoTen” bằng Python
- Bài 60: Viết xâu theo thứ tự ngược lại bằng Python
Cách Thực Hiện
- Duyệt qua tất cả các phần tử trong mảng.
- Sử dụng tập hợp (set) để loại bỏ các số trùng lặp.
- Trả về số lượng phần tử khác nhau trong tập hợp.
Chương Trình Python
Cách 1: Sử dụng tập hợp set()
# Hàm đếm số lượng số nguyên khác nhau trong mảng def dem_so_khac_nhau(mang): return len(set(mang)) # Sử dụng tập hợp để loại bỏ số trùng lặp # 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)] # Đếm số lượng số nguyên khác nhau so_luong_khac_nhau = dem_so_khac_nhau(mang) print("Số lượng số nguyên khác nhau trong mảng:", so_luong_khac_nhau)
Cách 2: Dùng vòng lặp và từ điển để tối ưu bộ nhớ
# Hàm đếm số lượng số nguyên khác nhau bằng từ điển def dem_so_khac_nhau_toi_uu(mang): tan_suat = {} for so in mang: tan_suat[so] = True # Ghi nhận sự xuất hiện của số đó return len(tan_suat) # 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)] # Đếm số lượng số nguyên khác nhau so_luong_khac_nhau = dem_so_khac_nhau_toi_uu(mang) print("Số lượng số nguyên khác nhau trong mảng:", so_luong_khac_nhau)
So Sánh Hai Cách
Phương pháp | Độ phức tạp | Ưu điểm | Nhược điểm |
Dùng set() | O(n) | Ngắn gọn, dễ hiểu | Sử dụng bộ nhớ để lưu tập hợp |
Dùng từ điển | O(n) | Giảm chi phí bộ nhớ | Cần vòng lặp xử lý thủ công |
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: 10
Nhập phần tử thứ 4: 5
Nhập phần tử thứ 5: 8
Nhập phần tử thứ 6: 20
Số lượng số nguyên khác nhau trong mảng: 4
Kết Luận
Bài viết đã hướng dẫn cách đếm số lượng số nguyên khác nhau trong mảng bằng hai phương pháp:
- Cách cơ bản: Dùng set(), nhanh chóng và dễ hiểu.
- Cách tối ưu: Dùng từ điển để quản lý bộ nhớ hiệu quả hơn.
Hy vọng bài viết hữu ích cho bạn!
Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !
Khóa học Python online từ cơ bản đến nâng cao