Esta no es una respuesta simple. Los enteros suelen ser de tamaño fijo, es decir, se representan con 32 o 64 bits. En este caso, Radix Sort sería el algoritmo de elección si la clasificación se realiza en la memoria. Consulte el efecto de la ordenación local en los algoritmos de ordenación paralela para obtener un análisis detallado sobre esto para los uniprocesadores y la ordenación rápida paralela en memoria de 64 bits para el uso paralelo de la ordenación por radix. Si el conjunto de datos no cabe en la memoria, debe confiar en la ordenación de combinación, utilizando un algoritmo para cada ejecución. En este caso, desea crear las ejecuciones más grandes posibles utilizando la selección Reemplazo o ejecuciones de tamaño fijo utilizando la clasificación Radix como antes. Consulte Selección de reemplazo bidireccional para un análisis detallado de la selección de reemplazo para ordenar las ejecuciones.
Cuando recurre a las cadenas, el gran problema es que son de tamaño variable, por lo que la alineación juega un papel importante. En cualquier caso, debe comenzar a ordenar por los caracteres más significativos de las palabras (de izquierda a derecha), ya que llevan la información del pedido. Por ejemplo, “bandera” e “independencia” primero deben ordenarse por f e i respectivamente. Por lo tanto, la clasificación se vuelve engorrosa y más compleja que para valores de tamaño fijo. Sin embargo, utilizando algún tipo de clasificación de cubetas, tener en cuenta la distribución estadística de cadenas por cubeta sería una buena estrategia. Luego, cuando los datos caben en la memoria, el uso de la clasificación de radix inversa sería más beneficioso.
- ¿Es seguro decir que las recomendaciones sociales siempre superarán a los algoritmos controlados por computadora?
- ¿Cómo convertirse en un experto en ciencia de datos (aprendizaje automático) que tiene una idea básica de la programación C / C ++? ¿Cuáles son algunos cursos o libros disponibles gratis o baratos?
- ¿Es posible elegir aleatoriamente un número de (0 a infinito), de modo que cada número tenga la misma probabilidad de ser elegido?
- Cómo resolver ADAGAME en SPOJ
- ¿Cuál es la mejor manera de analizar un currículum en los campos de la base de datos? ¿Qué hacer si tiene muchos currículums y necesita que los datos se extraigan en elementos individuales que se pueden colocar en una base de datos?