Professional Documents
Culture Documents
Stacks
Stacks
• Stacks là một dạng danh sách (mảng) đặc biệt với
ngữ cảnh LIFO
• Hai phép toán
• int push( Stack s, void *item );
- Bổ xung một phần tử vào đỉnh của stack
• void *pop( Stack s );
- Loại bỏ một phần tử từ đỉnh của stack
• Tương tự như một máy xếp đĩa
• Các phép toán khác
function g( int z ) {
int p, q;
p = …. ; q = …. ;
return f(p,q);
}
Context
for execution of f
Đệ qui
• Là công nghệ rất hữu ích
• Định nghĩa các hàm toán học
• Định nghĩa cấu trúc dữ liệu
• Các cấu trúc đệ qui được sử lý tự nhiên bởi
các hàm đệ qui!
Đệ qui
• Là công nghệ rất hữu ích
• Định nghĩa các hàm toán học
• Định nghĩa cấu trúc dữ liệu
• Các cấu trúc đệ qui được sử lý tự nhiên bởi
các hàm đệ qui!
• Các hàm định nghĩa đệ qui
• factorial
• Fibonacci
• GCD bởi thuật toán Euclid
• Biến đổi Fourier
• Trò chơi
• Tháp Hanoi (Towers of Hanoi)
• Cờ (Chess)
Đệ qui – Ví dụ
• Dãy số (Fibonacci)
y tồi!!!!
C int fib( n ) {
ia n ch ạ
i g
hờreturn
if ( n < c2i, t) 1;
n a c
on g Fiboreturn fib(n-1) + fib(n-2);
else
h ư n g , tr }
N