Meklēšanas algoritmu veidi

Māte un tēvs skūpstās ar meiteni uz paklāja

Ģimene izmanto portatīvo datoru.

Attēla kredīts: altrendo images/Stockbyte/Getty Images

Meklēšanas algoritmi ir svarīga daudzu programmu sastāvdaļa. Daži meklējumi ietver ieraksta meklēšanu datu bāzē, piemēram, sava ieraksta meklēšanu IRS datu bāzē. Citi meklēšanas algoritmi, piemēram, meklē labākos šaha gājienus, izmanto virtuālo telpu. Lai gan programmētāji var izvēlēties no daudziem meklēšanas veidiem, viņi izvēlas algoritmu, kas vislabāk atbilst datu bāzes lielumam un struktūrai, lai nodrošinātu lietotājam draudzīgu pieredzi.

Lineārā meklēšana

Lineārā meklēšana ir īso sarakstu izvēles algoritms, jo tas ir vienkāršs un tā ieviešanai ir nepieciešams minimāls kods. Lineārās meklēšanas algoritms aplūko pirmo saraksta vienumu, lai noskaidrotu, vai jūs to meklējat, un, ja jā, tad esat pabeidzis. Ja nē, tas aplūko nākamo vienumu un turpina katru saraksta ierakstu.

Dienas video

Binārā meklēšana

Binārā meklēšana ir populārs algoritms lielām datu bāzēm ar ierakstiem, kas sakārtoti pēc ciparu atslēgas. Kandidātu piemēri ir IRS datubāze ar sociālās apdrošināšanas numuru un DMV ieraksti, kas atslēgti ar autovadītāja apliecības numuriem. Algoritms sākas no datu bāzes vidus — ja jūsu mērķa skaitlis ir lielāks par vidējo, meklēšana turpināsies ar datu bāzes augšējo pusi. Ja jūsu mērķa numurs ir mazāks par vidējo, meklēšana tiks turpināta ar datu bāzes apakšējo pusi. Tas atkārto šo procesu, katru reizi pārgriežot datubāzi uz pusēm, līdz tiek atrasts ieraksts. Šī meklēšana ir sarežģītāka nekā lineārā meklēšana, taču lielām datu bāzēm tā ir daudz ātrāka nekā lineārā meklēšana.

Koku meklēšana

Koka meklēšana darbojas tikai tad, ja dati iekļaujas koka struktūrā. Datubāze sākas ar sakni, kas attiecas uz dažiem vienumiem, no kuriem katrs pāriet uz vēl dažiem vienumiem un tā tālāk, līdz jums ir koks. Viens piemērs ir šaha spēle. Pašreizējā dēļa pozīcija ir sakne. Likumīgās kustības no šīs pozīcijas ir viens solis uz leju pa koku un tā tālāk, līdz spēlētājs atrod to galda pozīciju, kas atstāj viņu vislabākajā pozīcijā.

Ģenētiskais algoritms

Ģenētiskā algoritma meklēšana ir viena no mākslīgā intelekta metodēm. Tas meklē "optimālo risinājumu", kas izteikts kā datu virkne, piemēram, reaktīvā dzinēja iekšējo izmēru saraksts, kas nodrošina maksimālu vilci. Meklēšana sākas ar nejaušu virkņu kopu un katru no tām pārbauda, ​​saglabājot labākās un audzējot tās, lai iegūtu nākamo paaudzi. Programma turpina atkārtot šo procesu, līdz nonāk pie optimālā risinājuma virknes.