Семейство използва лаптоп.
Кредит на изображението: altrendo images/Stockbyte/Getty Images
Алгоритмите за търсене са важна част от много програми. Някои търсения включват търсене на запис в база данни, като например търсене на вашия запис в базата данни на IRS. Други алгоритми за търсене преминават през виртуално пространство, като тези, които търсят най-добрите шахматни ходове. Въпреки че програмистите могат да избират от много видове търсене, те избират алгоритъма, който най-добре отговаря на размера и структурата на базата данни, за да осигурят удобно за потребителя изживяване.
Линейно търсене
Линейното търсене е алгоритъмът на избор за кратки списъци, защото е прост и изисква минимален код за изпълнение. Алгоритъмът за линейно търсене разглежда първия елемент от списъка, за да види дали го търсите и ако е така, сте готови. Ако не, той разглежда следващия елемент и през всеки запис в списъка.
Видео на деня
Двоично търсене
Двоичното търсене е популярен алгоритъм за големи бази данни със записи, подредени по цифров ключ. Примерните кандидати включват базата данни на IRS с ключ от социалноосигурителен номер и DMV записите, записани с номера на шофьорска книжка. Алгоритъмът започва от средата на базата данни - ако целевото ви число е по-голямо от средното число, търсенето ще продължи с горната половина на базата данни. Ако целевият ви номер е по-малък от средното число, търсенето ще продължи с долната половина на базата данни. Той продължава да повтаря този процес, като разрязва базата данни наполовина всеки път, докато намери записа. Това търсене е по-сложно от линейното търсене, но за големи бази данни е много по-бързо от линейното търсене.
Търсене на дърво
Търсенето в дърво работи само ако данните се вписват в дървовидна структура. Базата данни започва от корен, който отива до няколко елемента, всеки от които отива до още няколко елемента и така нататък, докато имате дърво. Един пример е играта на шах. Текущата позиция на дъската е основната. Законните ходове от тази позиция представляват една стъпка надолу по дървото и така нататък, докато играчът намери позицията на дъската, която го оставя в най-добрата позиция.
Генетичен алгоритъм
Търсенето с генетичен алгоритъм е една от техниките зад изкуствения интелект. Той търси "оптимално решение", изразено като низ от данни - като списък с вътрешни размери на реактивен двигател, който осигурява максимална тяга. Търсенето започва с произволна популация от низове и тества всеки от тях, запазвайки най-добрите и ги отглеждайки, за да получите следващото поколение. Програмата продължава да повтаря този процес, докато стигне до оптимален низ за решение.