TAILIEUCHUNG - 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 - ĐH KHTN TPHCM

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 gồm có những nội dung cụ thể sau: Giới thiệu các thao tác tìm kiếm phổ biến trong cuộc sống hàng ngày, các thuật toán tìm kiếm, tìm kiếm trình tự, thuật toán lính canh, tìm kiếm nhị phân và các thuật toán tìm kiếm nhị phân. nội dung chi tiết. | Giảng viên: Văn Chí Nam – Nguyễn Thị Hồng Nhung – Đặng Nguyễn Đức Tiến 2 Giới thiệu Tìm kiếm tuần tự Tìm kiếm nhị phân Tìm kiếm theo bảng băm Tổng kết Cấu trúc dữ liệu và giải thuật – HCMUS 2011 © FIT-HCMUS 2011 1 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 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ụng vào thực tế. Cấu trúc dữ liệu và giải thuật – HCMUS 2011 © FIT-HCMUS 2011 2 5 Sequential Search Linear Search Cấu trúc dữ liệu và giải thuật – HCMUS 2011 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ạn (exhaustive) Dùng lính canh (sentinel) Cấu trúc dữ liệu và giải thuật – HCMUS 2011 © FIT-HCMUS 2011 3 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 6 5 2 37 40 5 2 37 40 x = 6 1 25 x = 6 1 25 6 Dừng 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 = 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. Nếu a[i] khác x, tăng i thêm 1 và quay lại bước 2. Cấu trúc dữ liệu và giải thuật – HCMUS 2011 © FIT-HCMUS 2011 4 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 .

TỪ KHÓA LIÊN QUAN
TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.