BÀI 14. THUẬT TOÁN TÌM KIẾM TUẦN TỰ

A. TÓM TẮT LÍ THUYẾT

Thuật toán tìm kiếm tuần tự:

Bước 1.Xét vị trí đầu tiên của danh sách. 

Bước 2. Nếu giá trị của phần tử ở vị trí đang xét bằng giá trị cần tìm thì chuyển sang Bước 4, nếu không thì chuyển đến vị trí tiếp theo. 

Bước 3. Kiểm tra đã hết danh sách chưa. Nếu đã hết danh sách thì chuyển sang Bước 5, nếu chưa thì lặp lại từ Bước 2.

Bước 4. Trả lời “Tìm thấy” và chỉ ra vị trí phần tử tìm được; Kết thúc.

Bước 5. Trả lời “Không tìm thấy”; Kết thúc.

B. BÀI TẬP VÀ THỰC HÀNH

14.1. Thuật toán tìm kiếm tuần tự yêu cầu danh sách cần tìm phải được sắp xếp. 

 A. Đúng.

 B. Sai.

=> Đáp án:  B. Sai.

14.2. Điều gì xảy ra khi thuật toán tìm kiếm tuần tự không tìm thấy giá trị cần tìm trong danh sách?

A. Tiếp tục tìm kiếm và không bao giờ kết thúc.

B. Thông báo “Tìm thấy".

C. Thông báo “Tìm thấy” và kết thúc.

D. Thông báo “Không tìm thấy” và kết thúc.

 => Đáp án: D. Thông báo “Không tìm thấy” và kết thúc.

14.3. Chọn câu diễn đạt đúng hoạt động của thuật toán tìm kiếm tuần tự.

A. Tìm trên danh sách đã sắp xếp, bắt đầu từ đầu danh sách, chừng nào chưa tìm thấy hoặc chưa tìm hết thì còn tìm tiếp

B. Tìm trên danh sách đã sắp xếp, bắt đầu từ giữa danh sách, chừng nào chưa tìm thấy hoặc chưa tìm hết thì còn tìm tiếp. 

C. Tìm trên danh sách bất kì, bắt đầu từ giữa danh sách, chừng nào thấy hoặc chưa tìm hết thì còn tìm tiếp.

D. Tìm trên danh sách bất kì, bắt đầu từ đầu danh sách, chừng nào chưa tìm thấy hoặc chưa tìm hết thì còn tìm tiếp.

=> Đáp án: D.

Tìm trên danh sách bất kì, bắt đầu từ đầu danh sách, chừng nào chưa tìm thấy hoặc chưa tìm hết thì còn tìm tiếp.

14.4. Thuật toán tìm kiếm tuần tự cần bao nhiêu bước để tìm thấy sa số 7 trong danh sách [1, 4, 8, 7, 10, 28]?

 A. 2.                                 B. 3.                                    C. 4.                                             D. 5.

=> Đáp án:      C. 4.       

14.5. Thuật toán tìm kiếm tuần tự cần bao nhiêu bước để tìm thấy số 25 trong danh sách [3, 5, 12, 7, 11, 25]?

A. 5.                                    B. 6.                                   C. 7.                                              D. 8.

 => Đáp án:   B. 6.   

14.6. Thực hiện thuật toán tìm kiếm tuần tự để tìm số 10 trong danh sách [2, 6, 8, 4, 10, 12]. Đầu ra của thuật toán là?

A. Thông báo “Không tìm thấy”.

B. Thông báo “Tìm thấy”.

C. Thông báo “Tìm thấy”, giá trị cần tìm tại vị trí thứ 5 của danh sách.

D. Thông báo “Tìm thấy”, giá trị cần tìm tại vị trí thứ 6 của danh sách.

 => Đáp án: C. Thông báo “Tìm thấy”, giá trị cần tìm tại vị trí thứ 5 của danh sách.

14.7. Em hãy ghép mỗi nội dung ở cột A với những nội dung phù hợp ở cột TB để xác định chính xác đầu vào và đầu ra của thuật toán tìm kiếm tuần tự

=> Đáp án: 1-a; 1-c; 2-b; 2-d. 

14.8. Em hãy điền các từ/cụm từ: đã hết, “Không tìm thấy”, bằng, vị trí đầu tiên, “Tìm thấy” vào chỗ chấm (...) được đánh số trong các câu sau để được mô tả chính xác về thuật toán tìm kiếm tuần tự.

Bước 1. Xét phần tử của danh sách

Bước 2. Nếu giá trị của phần tử ở vị trí đang xét ....... (2)....... ... giá trị cần tìm thì chuyển sang Bước 4, nếu không thì chuyển đến vị trí tiếp theo.

Bước 3. Kiểm tra đã hết danh sách chưa. Nếu .........(3).. danh sách thì chuyển sang Bước 5, nếu chưa thì lặp lại từ Bước 2.

Bước 4. Trả lời (4)..... ...... và chỉ ra vị trí phần tử tim được; Kết thúc. 

Bước 5. Trả lời (5)..- Kết thúc.

=> Đáp án:

(1) – vị trí đầu tiên;

(2) – bằng;

(3) – đã hết; 

 (4) – “Tìm thấy”; 

(5) – “Không tìm thấy”.

14.9. Cho danh sách học sinh sau đây: 

Em hãy tạo bảng liệt kê các bước thực hiện thuật toán tìm kiếm tuần tự để tìm học sinh đầu tiên sinh vào tháng Một.

=> Đáp án: Lập bảng liệt kê các bước thực hiện thuật toán tìm kiếm tuần tự tương tự Hình 14.2 trong Hoạt động 1 của SGK. 

14.10. Thực hành: Em hãy tìm kiếm thông tin trên Internet để lập bảng danh sách khoảng 10 mặt hàng và đơn giá của mỗi mặt hàng. Sau đó thực hiện thuật toán tìm kiếm tuần tự để tìm kiếm một mặt hàng mà em thích nhất và cho biết đơn giá của mặt hàng đó

=> Đáp án:

Hướng dẫn:

Bước 1. Tìm kiếm thông tin trên Internet, lập bảng danh sách khoảng 10 mặt hàng và đơn giá của mỗi mặt hàng.

Bước 2. Chỉ ra tên một mặt hàng mà em thích nhất.

Bước 3. Lập bảng liệt kê các bước thực hiện thuật toán tìm kiếm tuần tự để tìm tên mặt hàng mà em thích nhất trong danh sách ở Bước 1