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.

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.

Trả lờ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.")

Câu hỏi cùng chủ đề

Xem tất cả