1.本题最主要的是将数进行排序和去重,排序可以利用数组的sort()方法
2.在去重的时候不知道应该采用什么方法,后来想到可以对数组进行遍历,然后如果两个数相等,就将其中一个数字替换下来,然后再将数字分别赋值为下一个数字
3.测试的时候输出打印的格式不太正确,后来又对数组遍历输出
4.Array.sort可以对数组进行升序排序
5.`
import java.util.Arrays;
import java.util.Scanner;
public class Test12 {
public static void main(String[] args) {
// write your code here
Scanner scan = new Scanner(System.in);
//录入数,对数组赋值
int N = scan.nextInt();
int []num = new int[N];
for(int i=0;i<N;i++){
num[i]= scan.nextInt();
}
//对数组进行升序排序
Arrays.sort(num);
//去重
for(int i=0;i<N-1;i++){
for(int j=i+1;j<N;j++){
if(num[i]==num[j]){
//如果两个数相同就将数组全部往后移一位
for(int a=j;a<N-1;a++){
num[a]=num[a+1];
}
j--;
N--;
}
}
}
System.out.println(N);
//输出打印数组
for(int i=0;i<N;i++){
System.out.print(num[i]+" ");
}
}`