Buscar es encontrar si un dato está en una colección y en qué posición. Ordenar es acomodar los datos de menor a mayor (o al revés). Son de los problemas más clásicos de la programación.
Piensa en una pila de exámenes: para encontrar el de un alumno puedes revisar uno por uno (búsqueda lineal); si están en orden alfabético, abres por la mitad y descartas la mitad que no sirve (búsqueda binaria), mucho más rápido.
| Algoritmo | Idea | Requisito | Pasos aproximados con 1000 datos |
|---|---|---|---|
| Búsqueda lineal | Revisar uno por uno | Ninguno | Hasta 1000 |
| Búsqueda binaria | Partir a la mitad cada vez | Datos ordenados | Unos 10 |
| Burbuja | Comparar vecinos e intercambiar | — | Hasta cerca de 500 000 comparaciones |
sorted() de Python |
Algoritmo optimizado (Timsort) | — | Mucho menos |