Bài 13. Nhập số liệu cho 2 dãy số thực a0 , a1 ,..., am-1 và b0 , b1 ,..., bn-1. Giả sử cả 2 dãy này đã được sắp theo thứ tự tăng dần. Hãy tận dụng tính sắp xếp của 2 dãy và tạo dãy c0 , c1 ,..., cm+n-1 là hợp của 2 dãy trên, sao cho dãy ci cũng có thứ tự tăng dần .
Mọi người cho ý kiến nhá!
Mã:
import java.util.Arrays;
import java.util.Scanner;
public class baiso13 {
//Ha xuat mang
public static void xuatmang(int[]a, int m, int n){
System.out.println();
int i;
for(i=m;i<n;i++)
System.out.print(" "+a[i]);
System.out.println();
}
//Ham them phan tu
public static void thempt(int []a, int n, int pt){
a[0]=pt;
Arrays.sort(a);
}
//Ham main
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
//Nhap n...
System.out.println("Nhap so pt mang a (n)...");
int n=s.nextInt();
System.out.println("Nhap so pt mang b (m)...");
int m=s.nextInt();
int i;
int[]a=new int[n];
int[]b=new int[m];
int[]c=new int[m+n+1];
//Nhap mang A va sap xep theo thu tu tang dan
System.out.println("Nhap gia tri mang A");
for(i=0;i<n;i++){
System.out.print("\n A["+i+"]=");
a[i]=s.nextInt();
}
Arrays.sort(a);
//Nhap mang B va sap xep theo thu tu tang dan
System.out.println("Nhap gia tri mang B");
for(i=0;i<m;i++){
System.out.print("\n B["+i+"]=");
b[i]=s.nextInt();
}
Arrays.sort(b);
//Xuat 2 mang A, B sau khi nhap va sap sep
System.out.println("Mang A");
xuatmang(a,0,n);
System.out.println("Mang B");
xuatmang(b,0,m);
//Tronn 2 mang A, B
for(i=0 ; i<n;i++)
c[i]=a[i];
i=0;
for(int j=n+1;j<n+m+1;j++){
c[j]=b[i];
i++;
}
Arrays.sort(c);
//Xuat mang sau khi da tron
System.out.println("Mang sau khi tron");
xuatmang(c,0,m+n+1);
}
}