Viết hàm thực hiện tìm kiếm nhị phân nhận hai tham số đầu vào
Giải Tin học 11 Bài 7: Lập trình giải bài toán tìm kiếm - Cánh diều
Nhiệm vụ 3 trang 120 Tin học 11: Viết hàm thực hiện tìm kiếm nhị phân nhận hai tham số đầu vào: dãy số a và giá trị x cần tìm.
Lời giải:
#Trả về chỉ số của x trong arr nếu tồn tại, nếu không có sẽ trả về -1
def binary_search(arr, low, high, x):
#Trường hợp cơ sở
if high >= low:
mid = (high + low) // 2
#Nếu phần tử có tồn tại ở phần giữa của mảng
if arr[mid] == x:
return mid
#Nếu phần tử nhỏ hơn mid, nó sẽ nằm ở phía bên trái của mảng điểm gốc là tử phần tử mid
elif arr[mid] > x:
return binary_search(arr, low, mid - 1, x)
#Nếu không, phần tử sẽ nằm bên phải
else:
return binary_search(arr, mid + 1, high, x)
else:
#Phần tử không tồn tại trong tập hợp
return -1
#Khởi tạo tập hợp
arr = [ 2, 3, 4, 10, 40 ]
x = 10
#Gọi hàm
result = binary_search(arr, 0, len(arr)-1, x)
if result != -1:
print("Phần tử cần tìm có chỉ số là ", str(result))
else:
print("Phần tử cần tìm không có trong mảng.")
Lời giải Tin 11 Bài 7: Lập trình giải bài toán tìm kiếm hay khác:
Nhiệm vụ 1 trang 120 Tin học 11: Em hãy thực hiện các yêu cầu sau....
Câu 1 trang 120 Tin học 11: Em hãy nêu ra một vài ví dụ về bài toàn tìm kiếm trong thực tế.....
Câu 2 trang 120 Tin học 11: Theo em, với dãy đã sắp thứ tự và cho một số x cụ thể....
Xem thêm lời giải bài tập Tin học lớp 11 Cánh diều hay nhất, ngắn gọn khác:
Tin học 11 Bài 10: Thiết kế chương trình từ trên xuống và phương pháp mô đun hoá
Tin học 11 Bài 11: Thực hành thiết kế và lập trình theo mo đun
Tin học 11 Bài 12: Thực hành thiết kế và lập trình theo mo đun tiếp theo
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 Cánh diều
- Giải Chuyên đề Tin học 11 Cánh diều
- Giải SBT Tin học 11 Cánh diều
- Giải lớp 11 Cánh diều (các môn họ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)
Tủ sách VIETJACK shopee lớp 10-11 cho học sinh và giáo viên (cả 3 bộ sách):
Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.
Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.
- Soạn văn 11 Cánh diều (hay nhất)
- Soạn văn 11 Cánh diều (ngắn nhất)
- Giải sgk Toán 11 - Cánh diều
- 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 - Cánh diều
- Giải sgk Hóa học 11 - Cánh diều
- Giải sgk Sinh học 11 - Cánh diều
- Giải sgk Lịch Sử 11 - Cánh diều
- Giải sgk Địa Lí 11 - Cánh diều
- Giải sgk Giáo dục KTPL 11 - Cánh diều
- Giải sgk Tin học 11 - Cánh diều
- Giải sgk Công nghệ 11 - Cánh diều
- Giải sgk Hoạt động trải nghiệm 11 - Cánh diều
- Giải sgk Giáo dục quốc phòng 11 - Cánh diều
- Giải sgk Âm nhạc 11 - Cánh diều