GIẢI THUẬT TÌM KIẾM TUYẾN TÍNH & NHỊ PHÂN
Giải thuật (algorithms): đó dãy các câu lệnh (statements)
chặt chẽ ng xác định trình tự c thao tác trên một số đối
tượng o đó sao cho sau một số hữu hạn bước thực hiện ta đạt
được kết quả mong muốn.
Thuật toán: mt dãy hữu hạn c bước, mỗi ớc tả
chính xác các phép toán hoặc hành động cần thực hiện, để giải
quyết một vấn đề.
Niklous Wirth, cha đẻ của ngôn ngữ lập trình Pascal và kỹ thuật lập trình
cấu trúc đã đúc kết ý nghĩa của dữ liệu và mối quan hệ hữu cơ của nó với
giải thuật bằng mệnh đề nổi tiếng:
Chương trình = Thuật toán + Cấu trúc dữ liệu
4
KHOA CÔNG NGHỆ THÔNG TIN
5
KHOA CÔNG NGHỆ THÔNG TIN
Bài toán được mô tả như sau:
Tập dữ liệu được lưu trữ là dãy a1, a2,..,an. Giả sử
chọn cấu trúc dữ liệu mảng để lưu trữ dãy số này
trong bộ nhớ chính, có khai báo: int a[n];
Khóa cần tìm x: int x;
Tìm kiếm
Tìm kiếm tuyến tính Tìm kiếm nhị phân
Tập dữ liệu đã
được sắp xếp
Tập dữ liệu
bất kỳ