Câu hỏi:
12/07/2024 291
Nêu những điểm khác biệt của chương trình trên với chương trình tìm kiếm nhị phân đã biết
Nêu những điểm khác biệt của chương trình trên với chương trình tìm kiếm nhị phân đã biết
Quảng cáo
Trả lời:
Điểm khác biệt:
1. Mục đích sử dụng:
- Chương trình tìm kiếm nhị phân: Sử dụng để tìm kiếm một phần tử duy nhất trong một dãy số đã được sắp xếp.
- Chương trình tìm ra các phần tử của dãy gần K nhất: Sử dụng để tìm các phần tử trong dãy số gần giá trị K nhất.
2. Phương pháp tìm kiếm:
- Chương trình tìm kiếm nhị phân: Sử dụng phương pháp chia để trị và tìm kiếm trên nửa dãy con.
- Chương trình tìm ra các phần tử của dãy gần K nhất: Sử dụng phương pháp tìm kiếm tuyến tính để tìm các phần tử gần giá trị K nhất.
4. Thời gian thực thi:
- Chương trình tìm kiếm nhị phân có thời gian thực thi nhanh hơn chương trình tìm ra các phần tử của dãy gần K nhất
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
- Sách - Sổ tay kiến thức trọng tâm Vật lí 11 VietJack - Sách 2025 theo chương trình mới cho 2k8 ( 45.000₫ )
- Trọng tâm Sử, Địa, GD KTPL 11 cho cả 3 bộ Kết nối, Chân trời, Cánh diều VietJack - Sách 2025 ( 38.000₫ )
- Sách lớp 11 - Trọng tâm Toán, Lý, Hóa, Sử, Địa lớp 11 3 bộ sách KNTT, CTST, CD VietJack ( 52.000₫ )
- Sách lớp 10 - Combo Trọng tâm Toán, Văn, Anh và Lí, Hóa, Sinh cho cả 3 bộ KNTT, CD, CTST VietJack ( 75.000₫ )
CÂU HỎI HOT CÙNG CHỦ ĐỀ
Lời giải
Giải thích kĩ hơn chương trình 2 trên tại các dòng 2 và 4:
- Dòng 2: nếu left == right tức là mảng có 1 phần tử
- Dòng 4: Nếu left == right - 1 tức là mảng có 2 phần tử
Lời giải
Vì
1. Tính bình thường:
- Để tính bằng phương pháp bình thường, ta sẽ lặp lại việc nhân 2 với chính nó 21 lần (tức là 2* 2*...*2, lặp lại 21 lần).
Tuy nhiên, việc tính toán này sẽ rất tốn thời gian và không hiệu quả khi giá trị của số mũ lớn hơn.
2. Chia để trị:
Bước 1: Chia bài toán thành các bài toán con
Chia 11 cho 2, ta được kết quả là 5 và số dư là 1: 11 = 2 * 5 + 1
Bước 2: Giải quyết các bài toán con
Ta cần tính 2^5 để giải quyết bài toán con này. Tiếp tục áp dụng phương pháp chia để trị trên bài toán con này:
Chia 5 cho 2, ta được kết quả là 2 và số dư là 1: 5 = 2 * 2 + 1
Tiếp tục giải bài toán con tiếp theo:
Chia 2 cho 2, ta được kết quả là 1 và số dư là 0: 2 = 2 * 1 + 0
Bây giờ ta đã giải quyết được tất cả các bài toán con.
Bước 3: Tính toán kết quả
Từ bài toán con cuối cùng, ta có được: 2^1 = 2
Từ bài toán con thứ hai, ta có được: 2^2 = (2^1)^2 = 2^2 = 4
Từ bài toán con đầu tiên, ta có được: 2^5 = (2^2)^2 * 2 = 4^2 * 2 = 16 * 2 = 32
Vậy: 2^11 = 2^5 * 2^5 * 2 = 32 * 32 * 2 = 1024
Do đó, 2^11 = 1024.
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.
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.