Thông tin tài liệu
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
Ngày đăng: 13/12/2022, 09:17
Xem thêm: Các thuật toán tìm kiếm