从1亿个数字中取出最大的100个
JVM需要调到-Xmx1024M,以免溢出
public class findValue {
public static void main(String[] args){
int max = 10000*10000;
int length=100;
int ints[] = new int[max];
Random random = new Random();
for (int i=0;i<max;i++) {
ints[i]=Math.abs(random.nextInt(max));
}
List<Integer> list = new ArrayList();
long start = System.currentTimeMillis();
int size=0;
int value=0;
list.add(ints[0]);
for(int i=1;i<max;i++){
value=ints[i];
size=list.size();
if(value<list.get(size-1)){
if(size<length){
list.add(value);
}
continue;
}else if(value>list.get(0)){
list.add(0,value);
if(size==length){
list.remove(size);
}
continue;
}
for(int j=0;j<size;j++){
if(value>list.get(j)){
//如果不需要排除重复数字,则去掉该判断
if(j>0&&value!=list.get(j-1)){
list.add(j,value);
if(size==length){
list.remove(size);
}
}
break;
}
}
}
System.out.println("time:"+(System.currentTimeMillis()-start));
System.out.println(list);
TreeSet<Integer> set = new TreeSet();
set.addAll(list);
System.out.println(set.size()+":"+list.size());
if(set.size()!=list.size()){
System.out.println("error");
}
int i=0;
for(Iterator<Integer> it=set.iterator();it.hasNext();){
value=it.next();
System.out.println(value+":"+list.get(list.size()-1-i));
if(value!=list.get(list.size()-1-i)){
System.out.println("error");
break;
}
i++;
}
}
}
E2160 3G
time:2453
分享到:
相关推荐
标题中的“答复: 一道经典线程面试题的4种解法”暗示了这是一个关于多线程编程的问题,通常在面试中出现,用于评估候选人的并发处理能力。在这个问题中,可能涉及到同步、线程安全、锁机制等关键概念。 在Java中,...
【造价师案例辅导:竣工结算考试题】 竣工结算在建筑工程中是至关重要的环节,涉及到项目的经济效益和承包商的收益。以下是一些相关的知识点: 1. **资金成本**:在第一题中提到了债券筹资,计算成本率时要考虑...
### 行政人事文员面试题解析 #### 一、请写出企业常用的公文文种?...以上是对给定文件中面试题的详细解答。通过这些答案,不仅可以帮助应聘者更好地准备面试,也能让企业了解到应聘者对于行政工作的理解和应对能力。
在Web开发中,确保用户提交的数据安全、有效是至关重要的。PHP作为服务器端脚本语言,可以处理并验证用户通过HTML表单提交的数据。下面将详细讨论PHP验证框的相关知识点。 1. **基本概念** - 验证框:在HTML中,...
标题中的“答复: 通过代码简单介绍JDK 7的MethodHandle,并与.NET的委托对比(二)”表明本文将深入探讨Java中的MethodHandle概念,并将其与.NET平台上的委托进行对比。MethodHandle是JDK 7引入的一个强大特性,它...
公文写作是事业单位考试中的重要组成部分,涉及到各类公文的基本格式、内容和使用场景。以下是对公文写作相关知识点的详细解释: 1. **公文标题**:公文的标题通常由发文机关、事由和文种三部分构成,例如“关于XXX...
文档标题提及的是“上海2016年造价工程师安装计量:通风工程考试题”,这表明内容涉及的是造价工程师资格考试的通风工程部分。通风工程是建筑工程中的一个分支,主要关注建筑内部的空气流通、温度控制和空气质量维护...
- 肯定答复与否认答复:对一般疑问句的回答,肯定答复用“Yes, + 主语 + 助动词/情态动词。”,否定答复用“No, + 主语 + 助动词/情态动词 + not。” 2. 具体题目解答: - 1. It is fun at school. 否认句:It is...
11. 答复疑问句:第十二题展示了对一般疑问句"Yes, I do"的肯定回答。 12. 自我介绍:第十三题中,当被问到姓名时,应回答"My name is ...". 13. 介绍他人:第十四题的"This is Tony"是向他人介绍的基本句型。 14...
点评:回答问题要从对方入题,引起对方好感,使对方感到你能尊重,关心公司的需要,愿为公司尽微薄之力。 职业发展 问题:如果本公司录用你,你最希望在哪个部门工作? 回答:本人希望到 XX 部门,但也很乐意接受...
14. **防潮层设置**:建筑物地下室墙体需设置两道防潮层,一道位于地下室墙附近,另一道在室外地面散水以上150~200mm处。 15. **招标人确定中标人期限**:在评标委员会提交书面评标报告后,招标人通常在规定时间内...
《2020年阿里精选面试题及答案.pdf》这份文档应该包含了这些领域的具体问题和推荐的答复,它为求职者提供了一个宝贵的参考,帮助他们在面试中展现出专业性和对阿里巴巴文化的理解,从而提高成功入职的可能性。...
博文链接:https://eric2007.iteye.com/blog/158580
5. **邀请与答复**:第五题展示了如何礼貌地拒绝邀请,"I'm sorry." 是一种常见的回应方式。 6. **指示代词**:第六题涉及到指示代词 "this" 的用法,用于指代近处的物品。 7. **拼写规则**:第七题询问如何拼写...
通信工程师面试题 本文档总结了通信工程师面试题相关的知识点,涵盖了TCP/IP、HTTP、CP/IP、网络通信协议、线路互换、分组互换等领域。 一、TCP/IP协议 TCP/IP协议是一组涉及TCP(传输控制协议)协议和IP(网际...
18. 公式输入:第十八题指出在Excel中插入公式可以点击“编辑栏”左侧的“插入函数”按钮,或者在“公式”选项卡中操作,但不能通过“插入”选项卡中的“对象”按钮。 19. 行距设置:第十九题提到设置24磅行距应...
13. **建设工程索赔程序**:索赔意向通知发出后的28天内,承包人应提交索赔报告及相关资料,工程师未在28天内答复或提出进一步要求,视为索赔被认可。 14. **钢筋性能**:抗拉性能是钢筋的最主要性能,因为它通常...