Đệ quy hàm R
đệ quy
R cũng chấp nhận đệ quy hàm, có nghĩa là một hàm được 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 hàm 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ả.
Nhà phát triển phải hết sức cẩn thận với đệ quy vì có thể khá dễ dàng viết một hàm không bao giờ kết thúc hoặc một hàm sử dụng quá nhiều bộ nhớ hoặc sức mạnh bộ xử lý. Tuy nhiên, khi được viết chính xác, đệ quy có thể là một cách tiếp cận lập trình rất hiệu quả và tinh tế về mặt toán học.
Trong ví dụ này, tri_recursion()
là một hàm mà chúng ta đã xác định để gọi chính nó ("recurse"). Chúng tôi sử dụng biến k
làm dữ liệu, biến này sẽ giảm ( -1
) mỗi lần chúng tôi lặp lại. Quá trình đệ quy kết thúc khi điều kiện không lớn hơn 0 (tức là khi nó bằng 0).
Đối với một nhà phát triển mới, có thể mất một chút thời gian để tìm ra cách thức hoạt động chính xác của nó, cách tốt nhất để tìm hiểu là thử nghiệm và sửa đổi nó.
Ví dụ
tri_recursion <- function(k) {
if (k > 0) {
result <- k + tri_recursion(k - 1)
print(result)
} else {
result = 0
return(result)
}
}
tri_recursion(6)
Hãy tự mình thử »