Tin học 7 Bài 15: Thuật toán tìm kiếm nhị phân

Tin học 7 Bài 15: Thuật toán tìm kiếm nhị phân

Giải bài tập SGK Tin học 7 trang 74, 75, 76, 77 sách Kết nối tri thức với cuộc sống giúp các em học sinh lớp 7 xem gợi ý giải các câu hỏi Bài 15: Thuật toán tìm kiếm nhị phân của Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính.

Bạn đang đọc: Tin học 7 Bài 15: Thuật toán tìm kiếm nhị phân

Qua đó, các em sẽ biết cách trả lời toàn bộ các câu hỏi của bài 15 trong sách giáo khoa Tin học 7 Kết nối tri thức với cuộc sống. Đồng thời, cũng giúp thầy cô tham khảo để soạn giáo án Tin học lớp 7 cho học sinh của mình theo chương trình mới. Mời thầy cô và các em cùng theo dõi nội dung chi tiết trong bài viết dưới đây của Download.vn:

Tin học lớp 7 bài 15: Thuật toán tìm kiếm nhị phân

    Giải Tin học 7 bài 15 phần Hoạt động

    Hoạt động 1

    Câu 1: Em hãy cho biết thuật toán tìm kiếm tuần tự phải thực hiện bao nhiêu bước để tìm được khách hàng tên “Trúc” trong danh sách ở Hình 15.1? Em hãy so sánh số bước thực hiện của thuật toán tìm kiếm tuần tự với số bước thực hiện của thuật toán tìm kiếm nhị phân.

    Trả lời:

    Thuật toán tìm kiếm tuần tự phải thực hiện 8 lần để tìm được khách hàng tên “Trúc”. Thuật toán tìm kiếm nhị phân chỉ thực hiện 3 lần lần để tìm được khách hàng tên “Trúc”.

    Câu 2: Theo em trước khi thực hiện thuật toán tìm kiếm nhị phân, danh sách khách hàng cần thoả mãn điều kiện gì? Nếu không thoả mãn điều kiện đó, thuật toán tìm kiếm nhị phân có thực hiện được không?

    Trả lời:

    Trước khi thực hiện thuật toán tìm kiếm nhị phân, danh sách khách hàng cần sắp xếp theo thứ tự từ nhỏ đến lớn. Nếu không sắp xếp thứ tự từ nhỏ đến lớn thì thuật toán tìm kiếm nhị phân không thực hiện được.

    Hoạt động 2

    Chuẩn bị: Hai bạn chơi A, B và 10 tấm thẻ ghi 10 số khác nhau (các số đều nhỏ hơn 20). Ví dụ, 10 số trên các tấm thẻ là 2, 3, 5, 6, 8, 9, 11, 15, 16, 18. Giả sử A giữ 10 tấm thẻ và B là người tìm kiếm.

    Yêu cầu: Bạn B sử dụng thuật toán tìm kiếm nhị phân để tìm một số nhỏ hơn 20 trong các tấm thẻ của bạn A.

    Cách chơi:

    • Bước 1. A úp lần lượt 10 chiếc thẻ lên bàn theo thứ tự các số từ bé đến lớn.
    • Bước 2. B cho A biết con số mình cần tìm.
    • Bước 3. B chọn tấm thẻ ở vị trí giữa.
    • Bước 4. A hé mở tấm thẻ và trả lời B bằng cách nói một trong ba cụm từ: “bằng nhau”, “lớn hơn” hoặc “bé hơn” tuỳ thuộc vào kết quả so sánh số bạn B cần tìm với số ở vị trí giữa của dãy.
    • Bước 5. Tuỳ vào câu trả lời của A mà B chọn nửa dãy tiếp theo để tìm kiếm.
    • Bước 6. Lặp lại các bước 3, 4, 5 cho đến khi B tìm thấy số cần tìm hoặc đã tìm hết dãy số.
    • Bước 7. Hoán đổi vị trí của A và B trong lượt chơi tiếp theo.

    Trả lời:

    Các em tìm 1 bạn chơi cùng mình.

    Giải Luyện tập Tin học 7 bài 15

    Luyện tập 1

    Cho danh sách tên các nước sau đây:

    Bolivia, Albania, Scotland, Canada, Vietnam, Iceland, Portugal, Greenland, Germany

    a) Em hãy sắp xếp danh sách tên các nước theo thứ tự trong bảng chữ cái.

    b) Em hãy liệt kê các bước tìm kiếm tên nước Iceland trong danh sách đã sắp xếp theo thuật toán tìm kiếm nhị phân.

    c) Em hãy so sánh số bước thực hiện tìm kiếm ở phần b với số bước thực hiện tìm kiếm ở Câu 2 phần Luyện tập của bài 14.

    Trả lời:

    a) Danh sách tên các nước theo thứ tự trong bảng chữ cái: Albania, Bolivia, Canada, Germany, Greenland, Iceland, Portugal, Scotland, Vietnam.

    b) Các bước tìm kiếm tên nước Iceland trong danh sách đã sắp xếp theo thuật toán tìm kiếm nhị phân:

    Bước 1: Xét vị trí ở giữa của dãy, đó là vị trí thứ 5

    So sánh “Greenland” và “Iceland” vì “G” đứng trước “I” trong bảng chữ cái nên bỏ đi nữa đầu danh sách.

    Bước 2: Xét vị trí ở giữa của nữa sau của dãy, đó là vị trí thứ 7

    So sánh Portugal và “Iceland” vì “P” đứng sau “I” trong bảng chữ cái nên bỏ đi nữa sau danh sách.

    Bước 3: Xét vị trí ở giữa của dãy, đó là vị trí thứ 6

    So sánh “Iceland” và “Iceland” vì hai giá trị bằng nhau nên thuật toán kết thúc.

    Sau 3 bước đã tìm thấy tên nước “Iceland” nên thuật toán kết thúc.

    Luyện tập 2

    Em hãy cho ví dụ một bài toán tìm kiếm trong thực tế mà có thể thực hiện bằng thuật toán tìm kiếm nhị phân? Hãy thực hiện thuật toán tìm kiếm nhị phân để giải quyết bài toán đó.

    Trả lời:

    Ví dụ: Tìm tên một bạn trong danh sách lớp.

    – Danh sách lớp, tên học sinh được sắp xếp theo thứ tự trong bảng chữ cái.

    ⇒ Để tìm tên một học sinh, chúng ta có thể thực hiện thuật toán tìm kiếm nhị phân để tìm kiếm.

    – Hướng dẫn tìm tên bạn Nga, (giả sử trong lớp không có tên trùng nhau).

    + Chúng ta, xem xét từ vị trí giữa sách. So sánh tên cần tìm với tên ở vị trí xét.

    Nếu kí tự đầu của tên đứng trước vần N thì tên cần tìm ở nửa sau danh sách.

    Nếu kí tự đầu của tên đứng sau vần N thì tên cần tìm ở nửa trước của danh sách.

    Nếu tên trùng nhau thì dừng lại.

    + Nếu chưa tìm thấy thì tiếp tục tìm như bước trên.

    Giải Vận dụng Tin học 7 bài 15

    Em tìm một từ tiếng Anh trong quyển từ điển theo cách nào? Tại sao em lại dùng cách đó?

    Trả lời:

    Em tìm một từ tiếng Anh trong quyển từ điển theo cách tìm kiếm nhị phân.

    Giả sử cuốn từ điển có khoảng 300 nghìn mục từ. Nếu tìm kiếm tuần tự thì mất rất nhiều thời gian. Nếu tra một từ trong từ điển bằng cách tìm kiếm nhị phân thì sau một lần chia đôi, phạm vi tìm kiếm giảm đi.

    Để lại một bình luận

    Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *