Obitelj koristi prijenosno računalo.
Zasluga slike: altrendo slike/Stockbyte/Getty Images
Algoritmi pretraživanja važan su dio mnogih programa. Neka pretraživanja uključuju traženje unosa u bazi podataka, kao što je traženje vašeg zapisa u bazi podataka porezne uprave. Drugi algoritmi za pretraživanje provlače se kroz virtualni prostor, poput onih koji traže najbolje šahovske poteze. Iako programeri mogu birati između brojnih vrsta pretraživanja, odabiru algoritam koji najbolje odgovara veličini i strukturi baze podataka kako bi pružio korisničko iskustvo.
Linearna pretraga
Linearna pretraga je algoritam izbora za kratke liste, jer je jednostavna i zahtijeva minimalan kod za implementaciju. Algoritam linearnog pretraživanja gleda na prvu stavku popisa da vidi tražite li je i, ako jeste, gotovi ste. Ako ne, gleda sljedeću stavku i dalje kroz svaki unos na popisu.
Video dana
Binarno pretraživanje
Binarno pretraživanje popularan je algoritam za velike baze podataka sa zapisima poredanim po numeričkom ključu. Primjeri kandidata uključuju bazu podataka porezne uprave s ključem socijalnog osiguranja i DMV zapise s brojevima vozačke dozvole. Algoritam počinje od sredine baze podataka - ako je vaš ciljni broj veći od srednjeg broja, pretraživanje će se nastaviti s gornjom polovicom baze podataka. Ako je vaš ciljni broj manji od srednjeg broja, pretraživanje će se nastaviti s donjom polovicom baze podataka. Neprestano ponavlja ovaj proces, prepolovivši bazu podataka svaki put dok ne pronađe zapis. Ovo pretraživanje je kompliciranije od linearnog pretraživanja, ali za velike baze podataka mnogo je brže od linearnog pretraživanja.
Pretraga stabla
Pretraživanje stabla radi samo ako se podaci uklapaju u strukturu stabla. Baza podataka počinje od korijena koji ide do nekoliko stavki, od kojih svaka ide na još nekoliko stavki i tako dalje dok ne dobijete stablo. Jedan primjer je igra šaha. Trenutna pozicija na ploči je korijen. Pravi potezi s ove pozicije predstavljaju jedan korak niz stablo, i tako sve dok igrač ne pronađe poziciju na ploči koja ga ostavlja u najboljoj poziciji.
Genetski algoritam
Pretraživanje genetskim algoritmom jedna je od tehnika u pozadini umjetne inteligencije. Traži "optimalno rješenje" izraženo kao niz podataka — kao što je popis unutarnjih dimenzija mlaznog motora koji pruža maksimalni potisak. Potraga počinje nasumičnom populacijom nizova i testira svaki od njih, zadržavajući najbolje i uzgajajući ih kako bi dobili sljedeću generaciju. Program nastavlja ponavljati ovaj proces sve dok ne dođe do optimalnog niza rješenja.