Merge 能寫成遞迴嘛?

設有一個 int tmp_arr[][]=new int [9][5]; 想說將裏面的內容做merge排列… int Marge[]=new int [100]; for(int i=0;i<1;i ){ Marge=Merge(????, tmp_arr[i]); } }//main end-------------------------------------------------- public static int[] Merge(int[] arr1, int[] arr2) { int[] arr3 = new int[arr1.length... show more 設有一個 int tmp_arr[][]=new int [9][5];
想說將裏面的內容做merge排列…

int Marge[]=new int [100];

for(int i=0;i<1;i ){
Marge=Merge(????, tmp_arr[i]);
}

}//main end-------------------------------------...


public static int[] Merge(int[] arr1, int[] arr2) {
int[] arr3 = new int[arr1.length arr2.length];
int i = 0, j = 0, k = 0;
while(i < arr1.length && j < arr2.length) {
if(arr1[i] <= arr2[j])
arr3[k ] = arr1[i ];
else
arr3[k ] = arr2[j ];
}
while(i < arr1.length)
arr3[k ] = arr1[i ];
while(j < arr2.length)
arr3[k ] = arr2[j ];

return arr3;
}//--------------------------以上是我merge的...
副程式的部份:
我是想說寫 arr3= Merge(arr3, arr2)的遞迴在副程式裏,最後再丟回去…但這樣對嘛?
主程式的部份:
則是我想說將tmp_arr[i]丟下去做排列…所以放後面。寫成
Marge=Merge(????, tmp_arr[i]); 那我前面是要放什麼呢?…

有哪位大大能教導一下呢?謝謝喔
Update: 我寫好了= =|||...
and Arrays.sort好像不能用二維的。。。
想說放著。看誰回就給他了…謝了
1 answer 1