JavaScript is required

Có đúng là quá nhiều lệnh gọi đệ quy có thể dẫn đến tràn ngăn xếp không?

A.

B.

Không

Trả lời:

Đáp án đúng: B


Đúng vậy. Mỗi khi một hàm đệ quy được gọi, một khung ngăn xếp (stack frame) mới được tạo để lưu trữ các biến cục bộ, tham số và địa chỉ trả về của hàm. Nếu một hàm đệ quy gọi chính nó quá nhiều lần mà không có điểm dừng (điều kiện cơ sở), số lượng khung ngăn xếp sẽ tăng lên liên tục. Cuối cùng, ngăn xếp sẽ hết dung lượng, dẫn đến lỗi "tràn ngăn xếp" (stack overflow).

Câu hỏi liên quan