Algoritme pencarian
Algoritme pencarian list mungkin adalah algoritme pencarian paling dasar. Tujuannya adalah mencari sebuah elemen dari sebuah himpunan dengan suatu kunci (kemungkinan memuat informasi yang terkait dengan kunci). Oleh karena hal ini adalah masalah yang lazim dalam ilmu komputer, kompleksitas komputasi algoritme-algoritme tersebut telah dipelajari dengan baik. Algoritme paling sederhana adalah pencarian linear, yang secara sederhana melihat setiap elemen dari list secara berurutan. Waktu pengerjaan algoritme ini adalah O("n"), dimana "n" adalah banyaknya elemen dalam list, dan dapat digunakan langsung pada list yang belum diproses. Algoritme pencarian list yang lebih canggih adalah pencarian biner; waktu pengerjaannya adalah O(log "n"). Waktu pengerjaannya jauh lebih baik daripada pencarian linear untuk list yang memiliki data banyak, tetapi sebelum dilakukan pencarian list terlebih dahulu harus terurut (lihat algoritme pengurutan) dan juga harus dapat diakses secara acak (pengaksesan acak). Pencarian interpolasi adalah lebih baik dari pencarian biner untuk list terurut yang sangat besar dan terdistribusi merata. Algoritme Grover adalah sebuah algoritme kuantum yang menawarkan percepatan kuadrat dibandingkan pencarian linear klasik untuk list tak terurut.
Asam deoksiribonukleat
Riset dalam algoritme pencarian string, yang menemukan kejadian dari urutan huruf di dalam urutan huruf yang lebih besar, dimotivasi sebagian oleh riset DNA, dimana algoritme ini digunakan untuk mencari urutan tertentu dari nukleotida dalam sebuah urutan yang besar. Dalam aplikasi lainnya seperti editor text, bahkan algoritme sederhana untuk masalah ini biasanya mencukupi, tetapi urutan DNA menyebabkan algoritme-algoritme ini untuk menunjukkan sifat kasus-mendekati-terburuk dikarenakan jumlah kecil dari karakter yang berbeda.