Trong bài viết này, chúng ta sẽ tìm hiểu về giải pháp và cách tiếp cận để giải quyết vấn đề đã cho.
Tuyên bố vấn đề
Với đầu vào danh sách, chúng ta cần tìm tổng chênh lệch tuyệt đối giữa tất cả các cặp trong danh sách.
Liệt kê () phương thức thêm một bộ đếm vào một phương thức có thể lặp lại và trả về nó ở dạng liệt kê kiểu đối tượng.
Trong phương pháp này, chúng tôi có một danh sách 'diffs' chứa sự khác biệt tuyệt đối.
Chúng tôi sử dụng hai vòng lặp có hai biến được khởi tạo. Một là lặp qua bộ đếm và một là lặp lại phần tử danh sách. Trong mỗi lần lặp lại, chúng tôi kiểm tra xem các phần tử có giống nhau hay không.
Nếu không, hãy tìm sự khác biệt tuyệt đối và thêm nó vào danh sách khác biệt.
Cuối cùng, chúng tôi tìm thấy tổng của danh sách. Vì mỗi cặp sẽ được đếm hai lần, chúng tôi chia tổng cuối cùng cho 2 để nhận được giá trị mong muốn và trả lại.
Ví dụ
def sumPairs(lst): diffs = [] for i, x in enumerate(lst): for j, y in enumerate(lst): if i != j: diffs.append(abs(x-y)) return int(sum(diffs)/2) # Driver program lst = [22,3,55,43] print(sumPairs(lst))
Đầu ra
177
Tất cả các biến &hàm được khai báo trong phạm vi toàn cục và được hiển thị bên dưới.
Kết luận
Trong bài viết này, chúng ta đã tìm hiểu về cách tiếp cận để tìm sự khác biệt tuyệt đối giữa tất cả các cặp trong danh sách