Khi cần tìm một phần tử xuất hiện số lần lẻ trong danh sách, một phương thức có thể được định nghĩa. Phương thức này duyệt qua danh sách và kiểm tra xem các phần tử trong các vòng lặp lồng nhau có khớp nhau không. Nếu khớp, bộ đếm được tăng lên. Nếu số đếm đó không chia hết cho 2, phần tử cụ thể của danh sách được trả về làm kết quả. Ngược lại, -1 được trả về làm kết quả.
Ví dụ
def odd_occurence(my_list, list_size):
for i in range(0, list_size):
count = 0
for j in range(0, list_size):
if my_list[i] == my_list[j]:
count += 1
if (count % 2 != 0):
return my_list[i]
return -1
my_list = [34, 56, 78, 99, 23, 34, 34, 56, 78, 99, 99, 99, 99, 34, 34, 56, 56]
print("Danh sách là: ")
print(my_list)
n = len(my_list)
print("Độ dài là: ")
print(n)
print("Phương thức tìm phần tử xuất hiện số lần lẻ được gọi ")
print("Phần tử xuất hiện số lần lẻ là: ")
print(odd_occurence(my_list, n))
Kết quả
Danh sách là: [34, 56, 78, 99, 23, 34, 34, 56, 78, 99, 99, 99, 99, 34, 34, 56, 56] Độ dài là: 17 Phương thức tìm phần tử xuất hiện số lần lẻ được gọi Phần tử xuất hiện số lần lẻ là: 34
Giải thích
- Phương thức
odd_occurenceđược định nghĩa, nhận danh sách và kích thước của nó làm tham số. - Kích thước danh sách được lấy làm phạm vi và danh sách được duyệt qua.
- Hai vòng lặp lồng nhau được duyệt, và nếu phần tử trong danh sách khớp với lần lặp thứ nhất và thứ hai, biến
countđược tăng lên. - Nếu biến
countlà số lẻ, phần tử cụ thể trong danh sách được trả về. - Một danh sách số nguyên được định nghĩa và hiển thị trên console.
- Độ dài của danh sách được lưu trong một biến.
- Phương thức được gọi bằng cách truyền các tham số liên quan.
- Kết quả được hiển thị trên console.