Viết chương trình của thuật toán tìm kiếm nhị phân với dãy sắp xếp giảm dần
Luyện tập 2 trang 93 Tin học 11: Viết chương trình của thuật toán tìm kiếm nhị phân với dãy sắp xếp giảm dần.
Lời giải:
def binary_search_reverse(arr, target):
def binary_search_reverse_helper(arr, target, low, high):
if low > high:
return -1
mid = (low + high) // 2
if arr[mid] == target:
return mid
elif arr[mid] < target:
return binary_search_reverse_helper(arr, target, low, mid - 1)
else:
return binary_search_reverse_helper(arr, target, mid + 1, high)
return binary_search_reverse_helper(arr, target, 0, len(arr) - 1)
# Sử dụng ví dụ đầu vào để kiểm tra
arr = [10, 8, 6, 4, 2]
target = 6
# Gọi hàm tìm kiếm nhị phân với dãy sắp xếp giảm dần
result = binary_search_reverse(arr, target)
if result != -1:
print("Phần tử", target, "được tìm thấy tại vị trí", result)
else:
print("Phần tử", target, "không tồn tại trong dãy.")
Lời giải bài tập Tin học 11 Bài 19: Bài toán tìm kiếm hay khác:
Xem thêm lời giải bài tập Tin học lớp 11 Kết nối tri thức hay nhất, ngắn gọn khác:
Xem thêm các tài liệu học tốt lớp 11 hay khác:
- Giải sgk Tin học 11 Kết nối tri thức
- Giải Chuyên đề Tin học 11 Kết nối tri thức
- Giải SBT Tin học 11 Kết nối tri thức
- Giải lớp 11 Kết nối tri thức (các môn học)
- Giải lớp 11 Chân trời sáng tạo (các môn học)
- Giải lớp 11 Cánh diều (các môn học)
- Soạn văn 11 (hay nhất) - KNTT
- Soạn văn 11 (ngắn nhất) - KNTT
- Giải sgk Toán 11 - KNTT
- Giải Tiếng Anh 11 Global Success
- Giải sgk Tiếng Anh 11 Smart World
- Giải sgk Tiếng Anh 11 Friends Global
- Giải sgk Vật Lí 11 - KNTT
- Giải sgk Hóa học 11 - KNTT
- Giải sgk Sinh học 11 - KNTT
- Giải sgk Lịch Sử 11 - KNTT
- Giải sgk Địa Lí 11 - KNTT
- Giải sgk Giáo dục KTPL 11 - KNTT
- Giải sgk Tin học 11 - KNTT
- Giải sgk Công nghệ 11 - KNTT
- Giải sgk Hoạt động trải nghiệm 11 - KNTT
- Giải sgk Giáo dục quốc phòng 11 - KNTT
- Giải sgk Âm nhạc 11 - KNTT