首页 > 编程语言 > 详细

(排序)P1059 明明的随机数

时间:2020-02-14 22:54:33      阅读:59      评论:0      收藏:0      [点我收藏+]

题解:

import java.util.HashSet;
import java.util.Iterator;
import java.util.Scanner;

public class Main {

public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int N=sc.nextInt();
int[] a=new int[N];
HashSet<Integer> set=new HashSet<>();
for (int i = 0; i < N; i++) {
set.add(sc.nextInt());
}
int ret=0;
for(int i:set){
a[ret++]=i;
}
sort(a,0,ret-1);
System.out.println(ret);
for (int i = 0; i < ret; i++) {
System.out.print(a[i]+" ");
}
}

private static void sort(int[] a,int b,int e) {
int k=a[(b+e)/2];
int i=b;
int j=e;
while(i<=j){
while(a[i]<k)i++;
while(a[j]>k)j--;
if(i<=j){
int t=a[i];
a[i]=a[j];
a[j]=t;
i++;
j--;
}
}
if(b<j)sort(a,b,j);
if(i<e)sort(a,i,e);
}

}

(排序)P1059 明明的随机数

原文:https://www.cnblogs.com/lijiahui-123/p/12309745.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!