Chức năng đệ quy trong python có nghĩa là gì?
Hàm đệ quy trong Python được sử dụng để gọi lặp đi lặp lại cùng một hàm cho đến khi vòng lặp đạt đến giá trị mong muốn trong quá trình thực thi chương trình bằng cách sử dụng logic chia để trị. Một trong những nhược điểm rõ ràng của việc sử dụng hàm đệ quy trong chương trình Python là 'nếu việc lặp lại không phải là một luồng được kiểm soát, nó có thể dẫn đến việc tiêu thụ một phần bộ nhớ hệ thống. Để khắc phục sự cố này, có thể sử dụng vòng lặp điều kiện tăng dần thay cho hàm Đệ quy trong ngôn ngữ lập trình python Show
Hàm đệ quy trong PythonKhái niệm đệ quy vẫn giữ nguyên trong Python. Hàm gọi chính nó để chia vấn đề thành các vấn đề nhỏ hơn. Ví dụ đơn giản nhất mà chúng ta có thể nghĩ về đệ quy là tìm giai thừa của một số Giả sử chúng ta cần tìm giai thừa của số 5 => 5. (Vấn đề của chúng ta) Để tìm 5. vấn đề có thể được chia thành những vấn đề nhỏ hơn 5. => 5 x 4 Bắt đầu khóa học phát triển phần mềm miễn phí của bạn Phát triển web, ngôn ngữ lập trình, kiểm thử phần mềm và những thứ khác Gói phát triển phần mềm tất cả trong một(hơn 600 khóa học, hơn 50 dự án) Giá Hơn 600 khóa học trực tuyến. hơn 50 dự án. Hơn 3000 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập trọn đời Vì vậy, để có được 5. Ta cần tìm 4. và nhân nó với 5 Hãy tiếp tục phân chia vấn đề 5. = 4. x 5 4. = 3. x 4 3. = 3 x 2 2. = 2 x 1 1. = 1 Khi nó đạt đến đoạn nhỏ nhất, tôi. e. , lấy giai thừa của 1, chúng ta có thể trả về kết quả là Hãy lấy một ví dụ mã giả. - Thuật toán cho giai thừaChúng ta hãy xem thuật toán cho giai thừa
lời gọi hàmGiả sử chúng ta đang tìm giai thừa của 5
Kết quả cuối cùng sẽ là 120, nơi chúng tôi bắt đầu thực hiện chức năng. Hàm đệ quy của chúng tôi sẽ dừng khi số lượng giảm đến mức có thể thu được kết quả
Ưu và nhược điểm của Hàm đệ quy trong Python
Một số ưu điểm
Mã Python – Đệ quy vs Lặp lạiChúng tôi đã hiểu đệ quy là gì và cách nó hoạt động trong Python, vì chúng tôi biết rằng tất cả các ngôn ngữ đều có cách triển khai đệ quy khác nhau để tối ưu hóa bộ nhớ và tính toán. Có thể có trường hợp lặp lại sẽ nhanh hơn đệ quy Ở đây chúng ta sẽ so sánh cả hai phương thức đệ quy và lặp để xem Python hoạt động như thế nào trong cả hai trường hợp 1. Mã đệ quy cho giai thừa
2. Bài toán giai thừa sử dụng phép lặp (looping)
3. Kết quả in
đầu ra Như chúng ta có thể thấy, cả hai đều cho cùng một đầu ra vì chúng ta đã viết cùng một logic. Ở đây chúng ta không thể thấy bất kỳ sự khác biệt nào trong việc thực thi Hãy thêm một số mã thời gian để có thêm thông tin về việc thực thi đệ quy và phép lặp trong Python Chúng tôi sẽ nhập thư viện "thời gian" và kiểm tra thời gian đệ quy và lặp lại để trả về kết quả 4. Mã với tính toán thời gian
Chúng tôi sẽ thực hiện lặp lại các lần thực hiện với một giá trị khác cho giai thừa và xem kết quả. Các kết quả dưới đây có thể thay đổi từ máy này sang máy khác. Chúng tôi đã sử dụng MacBook Pro 16 GB RAM i7 Chúng tôi đang sử dụng Python 3. 7 để thực hiện Trường hợp 1. - Giai thừa của 6 trường hợp 2. Thừa số của 50 trường hợp 3. Thừa số của 100 Trường hợp 4. Thừa số của 500 Trường hợp 5. Thừa số 1000 Chúng tôi đã phân tích cả hai phương pháp trong một vấn đề khác. Hơn nữa, cả hai đã thực hiện tương tự ngoại trừ trường hợp 4Trong trường hợp 5, chúng tôi đã gặp lỗi khi thực hiện với đệ quy Python có một hạn chế về độ sâu tối đa mà bạn có thể thực hiện với đệ quy, nhưng vấn đề tương tự tôi có thể giải quyết bằng phép lặp Python có những hạn chế đối với vấn đề tràn. Python không được tối ưu hóa cho đệ quy đuôi và đệ quy không được kiểm soát gây ra lỗi tràn ngăn xếp “hệ thống. hàm getrecursionlimit()” sẽ cho bạn biết giới hạn của đệ quy Giới hạn đệ quy có thể được thay đổi nhưng không được khuyến nghị; Kết luận – Hàm đệ quy Python
Bài viết được đề xuấtĐây là hướng dẫn về Hàm đệ quy trong Python. Ở đây chúng ta thảo luận về Hàm đệ quy là gì, hàm đệ quy trong Python, Thuật toán cho giai thừa, v.v. Bạn cũng có thể xem qua các bài viết được đề xuất khác của chúng tôi để tìm hiểu thêm– Hàm đệ quy trong Python là gì?Python cũng chấp nhận đệ quy hàm, nghĩa là một hàm đã xác định có thể gọi chính nó . Đệ quy là một khái niệm toán học và lập trình phổ biến. Nó có nghĩa là một chức năng gọi chính nó. Điều này có lợi là bạn có thể lặp qua dữ liệu để đạt được kết quả.
Hàm đệ quy nghĩa là gì?Hàm đệ quy là hàm lặp lại hoặc sử dụng số hạng trước đó của chính nó để tính các số hạng tiếp theo và do đó tạo thành một chuỗi các số hạng . Thông thường, chúng ta tìm hiểu về hàm số này dựa trên dãy số-hình học, trong đó có các hạng tử có sự khác biệt chung giữa chúng.
Hàm đệ quy và ví dụ là gì?Ví dụ kinh điển về lập trình đệ quy liên quan đến tính giai thừa . Giai thừa của một số được tính khi số đó nhân với tất cả các số bên dưới nó cho đến và bằng 1. Ví dụ: giai thừa(5) giống như 5*4*3*2*1 và giai thừa(3) là 3*2*1.
Đệ quy trong Python giải thích bằng một ví dụ là gì?Ví dụ về hàm đệ quy trong Python
. Chúng tôi sẽ viết đoạn mã sau để có được câu trả lời. tổng xác định (n). nếu n <= 1. # trường hợp cơ bản trả lại n khác. # trường hợp tổng quát hoặc đệ quy and = sum(n - 1) return n + and print(sum(6)) Kết quả. 21 |