Đáp án và lời giải
Bài tập Thuật toán tìm kiếm nhị phân có đáp án
Câu 1
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 2
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
1. 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”.
2. 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.
Câu 3
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Bước 1: Xét vị trí ở giữa của dãy, đó là vị trí số 5
So sánh “Hoà” và “Mai”. Vì “H” đứng trước “M” trong bảng chữ cái nên bỏ đi nữa sau danh sách.
Bước 2: Xét vị trí ở giữa của nửa đầu của dãy là vị trí số 3
So sánh “Hòa” và “Hòa”, vì hai giá trị bằng nhau nên thuật toán kết thúc.
Sau 2 bước đã tìm thấy tên khách hàng tên “Hoà” nên thuật toán kết thúc.
Câu 4
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 5
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 6
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợ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.
Câu 7
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợ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.
Câu 8
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợ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.