Câu hỏi:
11/07/2024 1,029
Nếu phải tìm một số trong dãy đã sắp xếp theo thứ tự tăng dần hoặc giảm dần, em có cách nào tìm nhanh hơn tìm kiếm tuần tự không?
Câu hỏi trong đề: Bài tập Tìm kiếm nhị phân có đáp án !!
Quảng cáo
Trả lời:
Em sẽ chia đôi dãy làm hai phần để tìm kiếm nhanh hơn.
Hot: Học hè online Toán, Văn, Anh...lớp 1-12 tại Vietjack với hơn 1 triệu bài tập có đáp án. Học ngay
CÂU HỎI HOT CÙNG CHỦ ĐỀ
Lời giải
Bước 1. Sắp xếp dãy theo thứ tự không giảm.
Bước 2. Ta chia đôi dãy số để tìm x trong dãy.
Bước 3. Lấy phần tử đứng giữa dãy để so sánh với x.
Nếu phần tử đó chính là x thì kết luận đã tìm thấy x và kết thúc thuật toán.
Ngược lại, ta có thể xác định được x chắc chắn không có trong nửa đầu hay nửa sau của dãy. Từ đó ta xác định được phạm vi tìm kiếm và thực hiện tìm kiếm trong phạm vi nữa dãy còn lại, sẽ được lặp lại theo cách như thế cho đến khi tìm được kết quả.
Lời giải
Tìm kiếm x = 60.
Bước 1. Ta sắp xếp dãy theo thứ tự không giảm.
Bước 2. Ta chia đôi dãy số để tìm x trong dãy. Ta sẽ chia ngay vị trí a6 (a6=52) vì x > a6. Phạm vi tìm kiếm tiếp theo là từ a7 đến a8.
Bước 3. Khi đó phạm vi tìm kiếm chỉ có a7 đến a8 và ta thấy không có số nào bằng x. Kết thúc thuật toán không tìm thấy kết quả x.
Lời giải
Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.
Lời giải
Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.
Lời giải
Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.