La situación se hará de la siguiente manera. Combine dos archivos cada uno dos por dos archivos de 35 * 2 registros cada uno y luego combine esos dos archivos para formar un archivo ordenado de 140 registros.
Tenemos dos matrices de tamaño [matemática] n / 2 [/ matemática] y necesitamos fusionarlas. Esto requiere como máximo [math] n / 2 + n / 2 = n [/ math] comparaciones, ya que cada paso del algoritmo de fusión hace una comparación y luego consume algún elemento de la matriz, por lo que no podemos hacer más que [math] n [/ matemáticas] comparaciones.
Lo mismo requiere al menos [matemáticas] n / 2 [/ matemáticas] comparaciones en el mejor de los casos.
- ¿Cómo escribo un código C completo, incluidos todos los bucles y las condiciones de la línea de límite para la eliminación del nodo en el árbol de búsqueda binario?
- ¿Qué es importante saber y estudiar para ser un excelente programador? ¿Es importante practicar programación competitiva?
- Como desarrollador web full stack con 1 año de experiencia, ¿sería beneficioso para mí aprender algoritmo y estructura de datos?
- ¿Cómo implementaría el ranking de respuestas de Quora?
- La variación es cuánto cambia su algoritmo dados los nuevos datos. ¿Qué significa esto?
Peor de los casos:
Asumiendo [math] n = 70 [/ math], y suponiendo el peor de los casos, se realizaron comparaciones máximas para dos archivos ordenados de [math] 35 [/ math] registros [math]. [/ Math]
Para fusionar dos archivos ordenados de [math] 70 [/ math] registros cada uno, necesitamos [math] 140 [/ math] compatisinh
Entonces, un total de [matemáticas] 140 [/ matemáticas] comparaciones.
Espero que eso ayude.
Salud.