Hướng dẫn python program to find pair of numbers in a list - chương trình python để tìm cặp số trong danh sách

Đưa ra một danh sách các số nguyên và biến số nguyên K, hãy viết một chương trình Python để tìm tất cả các cặp trong danh sách với Sum K.

Examples:

Input : lst =[1, 5, 3, 7, 9]
        K = 12
Output : [(5, 7), (3, 9)]

Input : lst = [2, 1, 5, 7, -1, 4]
        K = 6
Output : [(2, 4), (1, 5), (7, -1)]

& nbsp; Phương pháp số 1: Pythonic ngây thơ
Method #1 : Pythonic Naive

Đây là một cách tiếp cận ngây thơ cho vấn đề trên. Đầu tiên, chúng tôi lấy một danh sách trống ‘res, và bắt đầu một vòng lặp và đi qua từng yếu tố của danh sách số nguyên đã cho. Trong mỗi lần lặp, bật phần tử, lưu trữ nó trong ‘num, tìm sự khác biệt còn lại cho tổng K và kiểm tra xem sự khác biệt có tồn tại trong danh sách đã cho hay không.

def findPairs(lst, K): 

    res = []

    while lst:

def0def1= def3

____10def5= def7def8 def9

def0____21 def5findPairs(lst, K): 3 lst:

findPairs(lst, K): 5findPairs(lst, K): 6

    findPairs(lst, K): 8

        0     1

    2=     4    5    6    7    6    9    6res 1    6res 3____44

def7= res 7

res 8res 9

& nbsp; Phương pháp #2: Sử dụng =0
Method #2 : Using =0

Cách tiếp cận này tuân theo phương pháp tương tự như đã thảo luận ở trên bằng cách sử dụng =0.

=2 =3=4 =5

def findPairs(lst, K): 

    res = []

    while lst:

def0def1= def3

____10def5= def7def8 def9

def0____21 def5findPairs(lst, K): 3 lst:

findPairs(lst, K): 5lst:4

findPairs(lst, K): 5lst:6

        0     1

    2=     4    5    6    7    6    9    6res 1    6res 3____44

def7= res 7

& nbsp; Phương pháp #2: Sử dụng =0

Cách tiếp cận này tuân theo phương pháp tương tự như đã thảo luận ở trên bằng cách sử dụng =0.
Method #3 : def18 (Naive method)

=2 =3=4 =5

    []3= []5

    []7 []8findPairs(lst, K): 3 lst:

    res = []

    while lst:

def0def1= def3

findPairs(lst, K): 5def50def40def52    5def54

        0     1

    2=     4    5    6    7    6    9    6res 1    6res 3____44

def7= res 7

res 8res 9

& nbsp; Phương pháp #2: Sử dụng =0
Method #4 : def18 (Efficient method)

    []3= []5

    []7 []8findPairs(lst, K): 3 lst:

____10    2= def7def8     6

    2=     4    5    6    7    6    9    6res 1    6res 3____44

def7= res 7

res 8res 9