Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ
Tải xuống
Bài giảng "Cấu trúc dữ liệu và giải thuật: Các chiến lược tìm kiếm" được biên soạn với các nội dung chính sau đây: Giới thiệu về các chiến lược tìm kiếm: Tìm kiếm tuần tự, tìm kiếm nhị phân, tìm kiếm theo bảng băm . Mời các bạn cùng tham khảo bài giảng! | Cấu trúc dữ liệu và giải thuật các chiến lược tìm kiếm Giảng viên Văn Chí Nam Nội dung trình bày 2 Cấu trúc dữ liệu và giải thuật HCMUS 2011 Giới thiệu 3 Thao tác tìm kiếm rất phổ biến trong cuộc sống hàng ngày. Tìm kiếm hồ sơ tập tin. Tìm kiếm tên người trong danh sách. Cấu trúc dữ liệu và giải thuật HCMUS 2011 Thuật toán tìm kiếm 4 Có nhiều loại Tìm kiếm tuần tự Sequential Linear Search Tìm kiếm nhị phân Binary Search Mục tiêu Tìm hiểu về 2 thuật toán tìm kiếm cơ bản. Phân tích thuật toán để lựa chọn thuật toán phù hợp khi áp d Cấu trúc d ụng vào th ữ liệu và gi ực tế. ải thuật HCMUS 2011 5 Tìm kiếm tuần tự Sequential Search Linear Search Cấu trúc dữ liệu và giải thuật HCMUS 2011 Thuật toán tìm kiếm tuần tự 6 Input Dãy A n phần tử Giá trị x cần tìm Output Nếu x xuất hiện trong A trả về vị trí xuất hiện đầu tiên của x Nếu không trả về n hoặc 1 Thuật toán Vét c Cấu trúc d ạu và gi ữ liệ n exhaustive ải thuật HCMUS 2011 Tìm kiếm tuần tự - Vét cạn 7 Thuật toán Lần lượt so sánh x với các phần tử của mảng A cho đến khi gặp được phần tử cần tìm hoặc hết mảng. Ví dụ A 1 25 6 5 2 37 40 x 6 x 6 1 25 6 5 2 37 40 x 6 1 25 6 5 2 37 40 x 6 1 25 6 5 2 37 40 Dừng Cấu trúc dữ liệu và giải thuật HCMUS 2011 Tìm kiếm tuần tự - Vét cạn 8 Thuật toán LinearExhaustive Bước 1. Khởi tạo biến chỉ số i 0 Bước 2. Kiểm tra xem có thực hiện hết mảng hay chưa So sánh i và n Nếu chưa hết mảng i lt n sang bước 3. Nếu đã hết mảng i gt n thông báo không tìm thấy giá trị x cần tìm. Bước 3. So sánh giá trị a i với giá trị x cần tìm Nếu a i bằng x Kết thúc chương trình và thông báo đã tìm thấy x. Cấu trúc d Nếu ữ liệu và gi a i ải thuậ khác x t HCMUS 2011 tăng i thêm 1 và quay lại bước 2. Tìm kiếm tuần tự - Vét cạn 9 Nhận xét Phép so sánh là phép toán sơ cấp được dùng trong thuật toán. Suy ra số lượng các phép so sánh sẽ là thước đo độ phức tạp của thuật toán. Mỗi vòng lặp có 2 điều kiện cần kiểm tra Kiểm tra cuối mảng bước 2 Kiểm tra phần tử hiện tại có bằng x bước 3 Cấu trúc dữ liệu và giải thuật .