Computer >> Máy Tính >  >> Lập trình >> Python

Chương trình Python để tìm Tổng số của một danh sách lồng nhau bằng cách sử dụng đệ quy

Khi cần tìm tổng của một danh sách lồng nhau bằng kỹ thuật đệ quy, một phương thức do người dùng xác định sẽ được sử dụng, phương thức này sẽ lấy danh sách làm tham số.

Đệ quy tính toán đầu ra của các bit nhỏ của bài toán lớn hơn và kết hợp các bit này để đưa ra giải pháp cho bài toán lớn hơn.

Một danh sách có thể được sử dụng để lưu trữ các giá trị không đồng nhất (tức là dữ liệu thuộc bất kỳ kiểu dữ liệu nào như số nguyên, dấu phẩy động, chuỗi, v.v.).

Ví dụ

Dưới đây là một minh chứng cho điều tương tự -

def recursion_sum(my_list):
   my_total = 0
   for elem in my_list:
      if (type(elem) == type([])):
         my_total = my_total + recursion_sum(elem)
      else:
         my_total = my_total + elem
   return my_total
my_list = [[2,3], [7,9], [11,45], [78,98]]
print("The list elements are :")
print(my_list)
print( "The sum is :")
print(recursion_sum(my_list))

Đầu ra

The list elements are :
[[2, 3], [7, 9], [11, 45], [78, 98]]
The sum is :
253

Giải thích

  • Một phương thức có tên 'recursion_sum' được xác định, với danh sách là một tham số.
  • Ban đầu, một biến được gán cho 0.
  • Các phần tử trong danh sách được lặp lại và nếu kiểu của chúng khớp, các phần tử trong danh sách sẽ được thêm vào và phương thức được gọi lại.
  • Nếu không, các phần tử chỉ được thêm vào một biến.
  • Biến này được hiển thị dưới dạng đầu ra trên bảng điều khiển.
  • Bên ngoài chức năng, các hoạt động dưới đây diễn ra -
  • Danh sách lồng nhau được xác định và hiển thị trên bảng điều khiển.
  • Phương thức được gọi bằng cách chuyển danh sách này dưới dạng tham số.
  • Kết quả đầu ra được hiển thị trên bảng điều khiển.