¿Cuál es la ventaja de buscar en una lista ordenada en lugar de en una lista no ordenada?

Como regla general, mientras más suposiciones puedas hacer sobre cualquier cosa, más fácil será crear un modelo y así estudiarlo / predecir cosas con él, etc.

Tome un ejemplo de búsqueda de un libro en la biblioteca.

  • Pila sin clasificar de libros de la biblioteca
    • Tendría que revisar cada libro de la pila si necesitara un libro específico, ya que no se supone que pueda hacer sobre la pila de libros.
  • Dispuestos según el orden alfabético.
    • Puede omitir todos los libros que no comienzan con el alfabeto que está buscando.
    • Aún necesita revisar cada libro para encontrar un libro sobre el “Tema X” si no sabe su nombre porque no hay relación entre los temas y las letras iniciales de los libros.
  • Organizado en un sistema de biblioteca adecuado.
    • Puede hacer muchas suposiciones y, por lo tanto, encontrar cualquier libro es una simple cuestión de buscar el número de libro adecuado.

Por razones similares, si desea buscar en una lista no ordenada, debe mirar cada elemento para estar seguro. En una lista ordenada, puede eliminar muchos de los elementos rápidamente, como se hace en la búsqueda binaria, por ejemplo.

Déjame responder tu pregunta

Ventajas de la lista ordenada

  • Puede aplicar la Búsqueda binaria (log n) solo si la lista está ordenada, lo cual es un método muy rápido de búsqueda
  • Muchas más ventajas dependiendo del tipo de problema que esté resolviendo
  • Si todos los nombres del mundo se escriben juntos en orden y desea buscar la posición de un nombre específico, la búsqueda binaria logrará esto en un máximo de iteraciones [matemáticas] 35 [/ matemáticas]. ¡Es realmente increíble!

Aprenda: Tutoriales y notas de búsqueda binaria | Algoritmos | HackerEarth

Puede buscar el elemento central en su lista ordenada. Si no coincide con el elemento que está buscando, puede hacer una comparación para identificar en qué mitad del elemento puede estar presente y puede continuar buscando solo en esa mitad. Esto en cada paso o iteración está descartando la mitad de la lista. Esto hace que su búsqueda sea mucho más rápida.

Suponga que necesita encontrar un nombre de una lista de 1000 nombres. Si la lista está ordenada, deberá buscar como máximo 10 veces para encontrar si la clave está presente en la lista o no.