Thuật toán đệ quy dưới đây tính:
Function Test(a,b): Integer;
Begin
If (b = a) or (b = 0) then Test:=1
Else Test := Test (a-1,b-1) + Test (a-1,b);
End;
Trả lời:
Đáp án đúng: D
Đoạn code trên tính tổ hợp chập b của a, ký hiệu C(a, b). Ta có thể thấy rõ điều này nếu thay đổi cách viết như sau:
Function C(a, b): Integer;
Begin
If (b = a) or (b = 0) then C:=1
Else C := C (a-1, b-1) + C (a-1, b);
End;
Công thức truy hồi trên chính là công thức tính tổ hợp: C(n, k) = C(n-1, k-1) + C(n-1, k) với điều kiện dừng C(n, 0) = C(n, n) = 1.
Bộ 525 câu hỏi trắc nghiệm ôn thi môn Toán rời rạc có đáp án dưới đây sẽ là tài liệu ôn tập hữi ích dành cho các bạn sinh viên. Mời các bạn cùng tham khảo!
30 câu hỏi 60 phút





