Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 14 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
14
Dung lượng
186,28 KB
Nội dung
Giới thiệu Các thuật tốn tìm kiếm Nội dung trình bày • Bài tốn tìm kiếm • Tìm kiếm tuần tự, tìm kiếm nhị phân Tìm kiếm Tìm kiếm nhị phân • Một số tiếp cận khác Tìm kiếm dựa quy hoạch động Tìm kiếm dựa đệ quy Tìm kiếm dựa phân vùng Bài tốn tìm kiếm • Tìm kiếm phương án, đáp án theo u cầu đầu vào • Ví dụ: Cho danh sách xác định vị trí xuất phần tử dãy Tìm kiếm giải pháp lựa chọn để đạt giá trị cực đại tốn túi • Bài tốn xảy hai tình Dữ liệu xuất coi ngẫu nhiên Dữ liệu liệu thỏa mãn số ràng buộc định Tìm kiếm • Tìm kiếm với liệu khơng xếp • Ý tưởng Bắt đầu duyệt từ phần tử đến phần tử N-1 • Nếu xuất phần tử cần tìm kiếm ghi nhận vị trí xuất Thơng tin trả dựa theo tình trạng tìm thấy Tìm kiếm (t) • Thuật tốn • Input: A[0 N-1], x cần tìm kiếm vị trí • Output: Thơng tin vị trí for(i=0->N-1) a if(a[i]=x) break; return i Tìm kiếm (t) • Thực Tìm kiếm (t) • Đánh giá độ phức tạp Số phép toán so sánh: n Độ phức tạp thuật tốn: O(n) Tìm kiếm nhị phân • Tìm kiếm liệu xếp • Ý tưởng Thay tìm kiếm tim kiếm dựa giá trị dãy • Nếu số phải bé số trái kết thúc • Nếu giá trị tìm kiếm trùng với giá trị kết thúc • Nếu bé tìm kiếm từ đầu đến phần tử trước phần tử hiển • Nếu lớn phần tử tìm kiếm từ phần tử sau phần tử đến cuối dãy Tìm kiếm nhị phân (t) • Thuật tốn • Input: A[0 N-1], x cần tìm kiếm • Output: thơng tin vị trí vt=-1; l=0; r=N-1; while(l