Câu hỏi:
03/07/2023 238Em hãy viết chương trình tìm kiếm nhị phân giá trị x trong dãy số không giảm A có n phân tử, các phần tử có thể trùng nhau: kết quả là hiện thị chỉ số nhỏ nhất 7 sao cho Ai = x hoặc hiển thị thông báo không tìm thấy x.
Sách mới 2k7: Tổng ôn Toán, Lí, Hóa, Văn, Sử, Địa... kỳ thi tốt nghiệp THPT Quốc gia 2025, đánh giá năng lực (chỉ từ 70k).
Quảng cáo
Trả lời:
Do tính chất mảng đã sắp xếp, công việc tìm kiếm phần tử x có thể triển khai như sau:
1. Xét đoạn mảng arr[left…right] cần tìm kiếm phần tử x. Ta so sánh x với phần tử ở vị trí giữa của mảng(mid = (left + right)/2). Nếu:
2. Nếu phần tử arr[mid] = x. Kết luận và thoát chương trình.
3. Nếu arr[mid] < x. Chỉ thực hiện tìm kiếm trên đoạn arr[mid+1…right].
4. Nếu arr[mid] > x. Chỉ thực hiện tìm kiếm trên đoạn arr[left…mid-1].
CÂU HỎI HOT CÙNG CHỦ ĐỀ
Câu 1:
Trong thuật toán tìm kiếm nhị phân tìm một phần tử có giá trị x trong dãy số có 20 phân tử, em hãy cho biết sau hai bước lặp chia đôi để tìm kiếm mà vẫn chưa tìm được giá trị x đó thì độ lớn không gian tìm kiếm còn lại (tức là độ dài đoạn dãy số cần tìm) là bao nhiêu?
A.2 B4 C.5 D8
Câu 2:
Trong sách Tin học 7, em đã học thuật toán tìm kiếm nhị phân. Thuật toán này là một kĩ thuật thu hẹp phạm vi tìm kiếm trong phương pháp chia để trị. Em hãy quan sát dãy 9 số được sắp xếp tăng dần sau:
4 7 8 20 21 22 36 77 81
Số 21 ở vị trí chính giữa của dãy, các số bên trái của số 21 luôn nhỏ hơn 21 và các số bên phải của số 21 luôn lớn hơn 21. Do đó, nếu muốn tìm một số x nhỏ hơn 21 thì chỉ cần thu hẹp phạm vi tìm kiếm vào một nửa của dãy, theo em đó là nửa dãy bên trái hay nửa dãy bên phải của số 21?
Câu 3:
Hai mô tả sau đây chỉ ra phương pháp hiệu quả giải quyết bài toán bổ và đếm số hại dưa bằng ý tưởng kí thuật chia để trị. Em hãy tìm hiểu bài toán sau đây và rút ra ý tưởng chủ đạo của kĩ thuật chia để trị để giải quyết bài toán.
Câu 4:
Trong các bài toán tìm kiếm trên một không gian xác định, thu hẹp dần phạm vi tìm kiếm là một kĩ thuật của ý tưởng chia để trị. Em hãy tìm hiểu bài toán sau đây và cho biết ý tưởng chia để trị được thể hiện trong kĩ thuật thu hẹp phạm vi tìm kiếm.
Câu 5:
Hai công thức tính chỉ số i trong hai chương trình của hình 5 và Hình 6 có khác nhau. Em hãy cho biết hai chương trình này có cùng kết quả tìm kiếm không.
Bộ 4 đề thi giữa học kì 2 Tin 11 Kết nối tri thức có đáp án (Đề 1)
15 câu Trắc nghiệm Tin học 11 Kết nối tri thức Bài 17 có đáp án
Bộ 4 đề thi giữa học kì 2 Tin 11 Kết nối tri thức có đáp án (Đề 2)
15 câu Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19 có đáp án
15 câu Trắc nghiệm Tin học 11 Kết nối tri thức Bài 18 có đáp án
15 câu Trắc nghiệm Tin học 11 Kết nối tri thức Bài 21 có đáp án
15 câu Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20 có đáp án
Bộ 4 đề thi giữa học kì 2 Tin 11 Kết nối tri thức có đáp án (Đề 4)
Hãy Đăng nhập hoặc Tạo tài khoản để gửi bình luận