Si los requisitos indican que los elementos del TListBox van a estar ordenados, obtener el máximo y el mínimo se convierte en una operación elemental como bien lo apunta roman.
Ahora bien, forzar una ordenación para hacer este proceso elemental es un desperdicio.
En primer lugar no hace falta ordenar para extraer el máximo y/o el mínimo, basta con recorrer la lista y evaluar.
En segundo lugar, aún utilizando un algoritmo de ordenamiento tan rápido como QuickSort es un proceso lento comparado con un simple recorrido. QuickSort tiene en promedio una complejidad O(n * log n) mientras que un recorrido SIEMPRE es O(n).
Y aún utilizando algoritmos más avanzados que QuickSort, si fueran aplicables y viables a las necesidades, como TimSort que tiene una complejidad O(n) sigue siendo un desperdicio.
A menos que exista una verdadera necesidad de contar con los datos ordenados, es mucho más barato lanzar un for y evaluar máximo y mínimo.
Saludos,
|