O lớn của tìm kiếm nhị phân là gì?
O lớn của tìm kiếm nhị phân là gì?

Video: O lớn của tìm kiếm nhị phân là gì?

Video: O lớn của tìm kiếm nhị phân là gì?
Video: NMLT - Thuật toán Tìm kiếm nhị phân (Binary Search) 2024, Tháng mười một
Anonim

Tìm kiếm nhị phân nhanh hơn tuyến tính Tìm kiếm ngoại trừ các mảng nhỏ.

Tìm kiếm nhị phân thuật toán.

Hình dung về Tìm kiếm nhị phân thuật toán trong đó 7 là giá trị đích
Lớp Tìm kiếm thuật toán
Hiệu suất trường hợp tốt nhất O (1)
Hiệu suất trung bình O (log n)
Không gian phức tạp trong trường hợp xấu nhất O (1)

Ở đây, độ phức tạp của tìm kiếm nhị phân là gì?

Tìm kiếm nhị phân chạy vào thời điểm lôgarit xấu nhất, thực hiện so sánh O (log n), trong đó n là số phần tử trong mảng, O là ký hiệu O lớn và log là lôgarit. Tìm kiếm nhị phân nhận không gian không đổi (O (1)), nghĩa là không gian mà thuật toán lấy là giống nhau đối với bất kỳ số phần tử nào trong mảng.

Ngoài ra, tìm kiếm nhị phân có phải là nhanh nhất không? Có và không. Vâng, có tìm kiếm nhanh hơn, trung bình, hơn một đường chia nhỏ Tìm kiếm . Nhưng tôi tin rằng chúng vẫn là O (lg N), chỉ với một hằng số thấp hơn. Bạn muốn giảm thiểu thời gian cần thiết để tìm phần tử của mình.

Tương tự, người ta có thể hỏi, làm thế nào để bạn viết một tìm kiếm nhị phân?

Tìm kiếm nhị phân : Tìm kiếm một mảng được sắp xếp bằng cách chia liên tục Tìm kiếm khoảng thời gian một nửa. Bắt đầu bằng một khoảng bao gồm toàn bộ mảng. Nếu giá trị của Tìm kiếm khóa nhỏ hơn mục ở giữa khoảng, thu hẹp khoảng xuống nửa dưới. Nếu không, hãy thu hẹp nó ở nửa trên.

Độ phức tạp thời gian của tìm kiếm nhị phân là gì?

Vì vậy, phải có một số loại hành vi mà thuật toán đang hiển thị để đưa ra một phức tạp của log n. Hãy để chúng tôi xem nó hoạt động như thế nào. Từ Tìm kiếm nhị phân có hiệu suất trường hợp tốt nhất là O (1) và hiệu suất trường hợp xấu nhất (trường hợp trung bình) là O (log n), chúng ta sẽ xem xét một ví dụ về trường hợp xấu nhất. Hãy xem xét một mảng được sắp xếp gồm 16 phần tử.

Đề xuất: