Bài giảng cấu trúc dữ liệu và giải thuật chương 2 ths nguyễn thị khiêm hòa

53 323 1
Bài giảng cấu trúc dữ liệu và giải thuật  chương 2   ths  nguyễn thị khiêm hòa

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chương 2: Đệ quy giải thuật đệ quy Giảng viên: Ths Nguyễn Thị Khiêm Hòa Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM Nội dung    Tổng quan đệ quy Tối ưu khử đệ quy Ứng dụng giải thuật đệ quy Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM Mục tiêu  Hiểu rõ giải thuật đệ quy  Ưu khuyết điểm giải thuật đệ quy  Phương pháp khử đệ quy  Một số toán ứng dụng giải thuật đệ quy điển hình Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM Tổng quan đệ quy  Khái niệm  Giải thuật đệ quy  Một thuật toán gọi đệ quy giải toán cách rút gọn liên tiếp toán gốc thành toán có đầu vào nhỏ  Hàm đệ quy Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM Tổng quan đệ quy  Ví dụ: Xét toán tìm từ từ điển: If (từ điển trang) tìm từ trang else { Mở từ điển vào trang “giữa” Xác định xem nửa từ điển chứa từ cần tìm; if (từ nằm nửa trước) tìm từ nửa trước else tìm từ nửa sau } Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM Nguyên tắc hoạt động Tính chất thiếu đệ quy tính hữu hạn  Hàm đệ quy gồm hai phần:  Phần sở (Phần neo):  Phần đệ quy:  Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM Thiết kế giải thuật đệ qui  Để xây dựng giải thuật đệ quy , ta cần thực nội dung sau :  Thông số hóa toán  Tìm trường hợp neo giải thuật giải tương ứng  Tìm giải thuật giải trường hợp tổng quát phân rã toán theo kiểu đệ quy Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM Cài đặt hàm đệ quy  Cấu trúc hàm đệ qui sau If (suy biến) ; Else { ; ; ; } Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM Ưu nhược điểm đệ qui   Ưu điểm:  Sáng sủa, dễ hiểu, nêu rõ chất vấn đề  Tiết kiệm thời gian thực mã nguồn Nhược điểm:  Tốn nhiều nhớ, thời gian thực thi lâu  Một số toán lời giải đệ quy Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM Phân loại giải thuật đệ qui  Đệ quy phân thành loại :   Đệ quy trực tiếp: Đệ quy gián tiếp (Tương hỗ): A() B() A() B() C() Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 10 Phương pháp quay lui (back tracking)  Quan tâm:   Làm để xác định tập Tk, tức tập tất khả mà phàn tử thứ k dãy x1, x2, ,xn nhận Khi có tập Tk, để xác định xk, thấy xk phụ thuộc vào số j mà phụ thuộc vào x1, x2, ,xk-1 Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 39 Liệt kê hoán vị n số tự nhiên    Đặt N= {1, 2, ,n} Hoán vị n số tự nhiên x[0], x[1], ,x[n-1] Trong x[i]  x[j], i,j x[i]  {0 n-1} T1 = N, giả sử xác định x[0], x[1], , x[k-1] đó, Tk = {1 n}- {x[0], x[1], , x[k1]} Ghi nhớ tập Tk , k = n-1, ta cần sử dụng mảng b[0 n-1] giá trị 0, cho b[i] = i thuộc Tk Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 40 Liệt kê hoán vị n số tự nhiên Thu(int k){ if (k== n) inkq(); else for (int j=1; j[...]... Một số dạng giải thuật đệ quy đơn giản  Ví dụ: Cho dãy {Xn} xác định theo công thức truy hồi: x0 = 1 ; xn = n2x0 + (n-1)2x1 + + 22 xn -2 + 12xn-1 int X(int n ) { if (n == 0) return 1; else { int tg = 0; for (int i = 0 ; i ... Thông tin - Đại học Ngân hàng TP.HCM } 15 Một số dạng giải thuật đệ quy đơn giản  Ví dụ: Cho dãy {Xn} xác định theo công thức truy hồi: x0 = ; xn = n2x0 + (n-1)2x1 + + 22 xn -2 + 12xn-1 int X(int... TP.HCM Thiết kế giải thuật đệ qui  Để xây dựng giải thuật đệ quy , ta cần thực nội dung sau :  Thông số hóa toán  Tìm trường hợp neo giải thuật giải tương ứng  Tìm giải thuật giải trường hợp... Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 25 Bài toán tháp Hà Nội  B  C (A trung gian) A (n -2 ) B (n-1) C (2) Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 26 Bài toán tháp Hà Nội

Ngày đăng: 03/12/2015, 02:15

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan