Combinar Ordenado matriz
Dados dos matrices de enteros ordenados nums1 y nums2 , de combinación de nums2 en nums1 como una matriz ordenada.
Nota:
Es posible asumir que nums1 tiene suficiente espacio (tamaño que es mayor o igual a m + n ) para mantener los elementos adicionales de nums2 . El número de elementos inicializa en nums1 y nums2 son m y n respectivamente.
class Solution {
public void merge(int[] nums1, int m, int[] nums2, int n) {
int i=m-1;int j=n-1;int sum=m+n-1;
while(i>=0&&j>=0){
if(nums1[i]>nums2[j]){
nums1[sum--]=nums1[i--];
}
else{
nums1[sum--]=nums2[j--];
}
}
while(j>=0){
nums1[sum--]=nums2[j--];
}
}
}
Debido a que el tema dijo que deberíamos combinar las dos matrices para nums1, pero no podemos fusionar elementos de la matriz en la parte frontal de nums1, ya que esto causará ninguna comparación de los elementos no se encuentra, por así comparar desde la parte posterior.