グループソート


配列A、Bが指定されている場合は、プログラムを作成し、それらを統合して再配置します.
まず、私は問題を見て、ロケータから出てきたmergeSortを思い出しましたが、アルゴリズム自体が思い出せません...
以前ArrayListに何らかの方法で並べ替えられていたので、その部分で解いてみました.
正解ではないかもしれない出題者の意図はこれではない...
入力
1行目にA、Bのサイズ順に配列を入力
次の行には配列Aの内容が入力され、次の行には配列Bの内容が入力される
しゅつりょく
2つの配列を結合して出力します.
import java.io.*;
import java.util.*;
class Main {
	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String input = br.readLine();
		
		String[] Size = input.split(" ");
		
		int leng = Integer.valueOf(Size[0]) +  Integer.valueOf(Size[1]);
		

		ArrayList<Integer> arr = new ArrayList<Integer>(leng);
		String input1= br.readLine();
		String[] Size1= input1.split(" ");
		for(int i = 0; i < Size1.length; i++){
			arr.add(Integer.valueOf(Size1[i]));
		}
		String input2= br.readLine();
		String[] Size2= input2.split(" ");
		for(int i = 0; i < Size2.length; i++){
			arr.add(Integer.valueOf(Size2[i]));
		}
		
		
		arr.sort(Comparator.naturalOrder());
		for(int i = 0; i < arr.size(); i++){
			System.out.print(arr.get(i)+" ");
		}
	}
}
まず2つの配列のサイズを求めてlengに保存し,ArrayListのサイズを生成する.
そしてArrayListにA、Bの順に入れます
Comparator.自然注文()→昇順
Comparator.reverseOrder()→降順
ソートの使用後
順次出力します.