Hướng dẫn write a python program to find the three elements that sum to zero from a list of n numbers - viết chương trình python để tìm ba phần tử có tổng bằng 0 từ danh sách n số

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:50:48 (UTC/GMT +8 giờ)

Lớp Python: Tập thể dục-6 với giải pháp

Viết một lớp Python để tìm ba phần tử tổng hợp về 0 từ một tập hợp (mảng) của n số thực.

Giải pháp mẫu::

Mã Python:

class py_solution:
 def threeSum(self, nums):
        nums, result, i = sorted(nums), [], 0
        while i < len(nums) - 2:
            j, k = i + 1, len(nums) - 1
            while j < k:
                if nums[i] + nums[j] + nums[k] < 0:
                    j += 1
                elif nums[i] + nums[j] + nums[k] > 0:
                    k -= 1
                else:
                    result.append([nums[i], nums[j], nums[k]])
                    j, k = j + 1, k - 1
                    while j < k and nums[j] == nums[j - 1]:
                        j += 1
                    while j < k and nums[k] == nums[k + 1]:
                        k -= 1
            i += 1
            while i < len(nums) - 2 and nums[i] == nums[i - 1]:
                i += 1
        return result

print(py_solution().threeSum([-25, -10, -7, -3, 2, 4, 8, 10]))

Đầu ra mẫu:

[[-10, 2, 8], [-7, -3, 10]] 

Trình bày bằng hình ảnh:

Hướng dẫn write a python program to find the three elements that sum to zero from a list of n numbers - viết chương trình python để tìm ba phần tử có tổng bằng 0 từ danh sách n số

Flowchart:

Hướng dẫn write a python program to find the three elements that sum to zero from a list of n numbers - viết chương trình python để tìm ba phần tử có tổng bằng 0 từ danh sách n số

Trực quan hóa thực thi mã Python:

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực hiện chương trình đã nói:

Trình chỉnh sửa mã Python:

Đóng góp mã và nhận xét của bạn thông qua Disqus.

Trước đây: Viết một lớp Python để tìm một cặp phần tử (chỉ số của hai số) từ một mảng đã cho có tổng bằng một số mục tiêu cụ thể. Hiện tại: Viết một lớp Python để thực hiện POW (X, N). Write a Python class to find a pair of elements (indices of the two numbers) from a given array whose sum equals a specific target number.
Next: Write a Python class to implement pow(x, n).

Python: Lời khuyên trong ngày

Sử dụng năng suất để tạo ra một trình lặp đơn giản:

>>> def foo(lst):
>>>   for x in lst:
>>>       yield x
>>>       yield x*2

>>> a = [1, 3]
>>> list(foo(a))
[1, 2, 3, 6]

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:50:48 (UTC/GMT +8 giờ)

Thử thách Python - 1: Tập thể dục -9 với giải pháp

Viết một chương trình Python để tìm ba số từ một mảng sao cho tổng của ba số bằng 0.

Explanation:

Hướng dẫn write a python program to find the three elements that sum to zero from a list of n numbers - viết chương trình python để tìm ba phần tử có tổng bằng 0 từ danh sách n số

Giải pháp mẫu:-:-

Mã Python:

# return a list of lists of length 3 
def three_Sum(num):
    if len(num)<3: return []
    num.sort()
    result=[]
    for i in range(len(num)-2):
        left=i+1
        right=len(num)-1
        if i!=0 and num[i]==num[i-1]:continue
        while left

Đầu ra mẫu:

[[-1, -1, 2], [-1, 0, 1]]                                                                                     
[[-10, 2, 8], [-7, -3, 10]] 

Flowchart:

Hướng dẫn write a python program to find the three elements that sum to zero from a list of n numbers - viết chương trình python để tìm ba phần tử có tổng bằng 0 từ danh sách n số

Trực quan hóa thực thi mã Python:

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực hiện chương trình đã nói:

Trình chỉnh sửa mã Python:

Đóng góp mã và nhận xét của bạn thông qua Disqus.

Trước đây: Viết một lớp Python để tìm một cặp phần tử (chỉ số của hai số) từ một mảng đã cho có tổng bằng một số mục tiêu cụ thể. Hiện tại: Viết một lớp Python để thực hiện POW (X, N). Write a Python program to find missing numbers from a list.
Next: Write a Python program to find three numbers from an array such that the sum of three numbers equal to a given number.

Python: Lời khuyên trong ngày

Sử dụng năng suất để tạo ra một trình lặp đơn giản:

>>> def foo(lst):
>>>   for x in lst:
>>>       yield x
>>>       yield x*2

>>> a = [1, 3]
>>> list(foo(a))
[1, 2, 3, 6]