Om man tar for seg et datasett som inneholder N objekter, så vil en enkel søkealgoritme måtte gå gjennom hver enkelt objekt i settet for å finne et spesifikt objekt. I gjennomsnitt innebærer det at man må søke gjennom halvparten av objektene i settet, og i verste fall må alle objektene undersøkes. Mao. en O(N) eller lineær tid algoritme. Dette er åpenbart ikke optimalt for større datamengder, og det er ofte ønskelig å forbedre ytelsen på søk.