Je, O kubwa ya utafutaji wa binary ni nini?
Je, O kubwa ya utafutaji wa binary ni nini?

Video: Je, O kubwa ya utafutaji wa binary ni nini?

Video: Je, O kubwa ya utafutaji wa binary ni nini?
Video: Unataka kujifunza Cryptocurrency, Forex na njia za kuingia pesa mtandaoni? Hii ni habari njema 2024, Mei
Anonim

Utafutaji wa binary ni kasi kuliko mstari tafuta isipokuwa kwa safu ndogo.

Utafutaji wa binary algorithm.

Taswira ya utafutaji wa binary algorithm ambapo 7 ndio thamani inayolengwa
Darasa Tafuta algorithm
Utendaji bora wa kesi O (1)
Utendaji wa wastani O (logi n)
Utata wa nafasi mbaya zaidi O (1)

Hivi, ni nini utata wa utafutaji wa binary?

Utafutaji wa binary huingia kwa wakati mbaya zaidi wa logarithmic, ikifanya ulinganisho wa O(logi n), ambapo n ni idadi ya vipengee katika safu, nukuu ya O ni O kubwa, na kumbukumbu ni logariti. Utafutaji wa binary inachukua nafasi ya mara kwa mara (O(1)), ikimaanisha kuwa nafasi iliyochukuliwa na algorithm ni sawa kwa idadi yoyote ya vitu kwenye safu.

Zaidi ya hayo, je, utafutaji wa binary ndio wa haraka zaidi? Ndiyo na hapana. Ndio wapo utafutaji ambazo ni za haraka, kwa wastani, kuliko sehemu mbili tafuta . Lakini ninaamini kuwa bado ni O(lg N), na hali ya chini kabisa. Unataka kupunguza muda unaochukuliwa kupata kipengele chako.

Vile vile mtu anaweza kuuliza, unaandikaje utafutaji wa binary?

Utafutaji wa binary : Tafuta safu iliyopangwa kwa kugawanya mara kwa mara tafuta muda katika nusu. Anza na muda unaofunika safu nzima. Ikiwa thamani ya tafuta ufunguo ni chini ya kipengee kilicho katikati ya muda, punguza muda hadi nusu ya chini. Vinginevyo punguza hadi nusu ya juu.

Ugumu wa wakati wa utaftaji wa binary ni nini?

Kwa hivyo lazima kuwe na aina fulani ya tabia ambayo algorithm inaonyesha kutolewa a utata ya logi n. Wacha tuone jinsi inavyofanya kazi. Tangu utafutaji wa binary ina ufanisi bora wa kesi ya O (1) na kesi mbaya zaidi (kesi ya wastani) ya O(logi n), tutaangalia mfano wa kesi mbaya zaidi. Fikiria safu iliyopangwa ya vipengele 16.

Ilipendekeza: