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.
Algoritme genetik
Algoritme Genetik khususnya diterapkan sebagai simulasi komputer dimana sebuah populasi representasi abstrak (disebut kromosom) dari solusi-solusi calon (disebut individual) pada sebuah masalah optimisasi akan berkembang menjadi solusi-solusi yang lebih baik. Secara tradisional, solusi-solusi dilambangkan dalam biner sebagai string '0' dan '1', walaupun dimungkinkan juga penggunaan penyandian (encoding) yang berbeda. Evolusi dimulai dari sebuah populasi individual acak yang lengkap dan terjadi dalam generasi-generasi. Dalam tiap generasi, kemampuan keseluruhan populasi dievaluasi, kemudian "multiple individuals" dipilih dari populasi sekarang "(current)" tersebut secara "stochastic" (berdasarkan kemampuan mereka), lalu dimodifikasi (melalui mutasi atau rekombinasi) menjadi bentuk populasi baru yang menjadi populasi sekarang ("current") pada iterasi berikutnya dari algoritme.