Paso 1. Cree una matriz temporal con el tamaño igual a la suma de los tamaños de las dos primeras matrices. (Aplicar fusión ([matemática] O (N) [/ matemática]))
Temporary_Array = Merge (First_Array, Second_Array)
Paso 2. Cree un Final_Array con el tamaño igual a la suma de los tamaños de Temporary_Array y Third_Array. (Aplicar fusión ([matemática] O (N) [/ matemática]))
- ¿Cuál es el mejor libro para aprender algoritmos y estructuras de datos en Java para principiantes?
- ¿Cómo debo usar el libro Introducción a los algoritmos de Cormen de manera efectiva? ¿Es mejor elegir un tema que haya encontrado en algún lugar de la programación competitiva y leer un algoritmo relacionado con eso o revisarlo de principio a fin?
- ¿Cómo construir un algoritmo hash? ¿Dónde puedo aprender más?
- ¿Por qué se utiliza la ordenación del montón?
- ¿El laboratorio de codificación dexter es bueno para C / C ++?
Final_Array = Fusionar (Temporary_Array, Third_Array)
CÓDIGO:
clase pública Merge3 {
public static void main (String [] args) {
// TODO Código auxiliar de método generado automáticamente
int a [] = {5, 6, 10, 14, 18};
int b [] = {2, 4, 5, 7, 10};
int c [] = {1, 20, 25};
int mergeAB [] = fusionar (a, b);
int mergeFinal [] = merge (mergeAB, c);
for (int i = 0; i <mergeFinal.length; i ++) {
System.out.print (mergeFinal [i] + “”);
}
}
Private static int [] merge (int [] a, int [] b) {
// TODO Código auxiliar de método generado automáticamente
int result [] = new int [a.length + b.length];
int i = 0; // Índice inicial de la primera submatriz
int j = 0; // Índice inicial de la segunda submatriz
int k = 0; // Índice inicial de subarreglos fusionados
while (i <a.length && j <b.length) {
if (a [i] <= b [j]) {
resultado [k] = a [i];
i ++;
} más {
resultado [k] = b [j];
j ++;
}
k ++;
}
/ *
* Copie los elementos restantes de un [], si hay alguno
* /
while (i <a.length) {
resultado [k] = a [i];
i ++;
k ++;
}
/ *
* Copie los elementos restantes de b [], si hay alguno
* /
mientras que (j <longitud b) {
resultado [k] = b [j];
j ++;
k ++;
}
resultado de retorno;
}
}