100万查找重复
作者:检测通查重 发表时间:2022-12-17 15:09:57 浏览次数:71
问:面试题:有一个100万的数组,里边有两个是重复的,如何设计算法找到。答://100万不是很大
import java.util.*;
public class Test{
public static void main(String[] args){
int[] a = new int[1000000];
for(int i = 0; i<1000000;i++){
a[i] = i+1; //从1--1000000没有重复的
}
a[355] = 100;//将第356个数改成100,这样就只有两个重复的数100
List list = new ArrayList();
for(int i = 0 ; i < 1000000;i++){
Integer temp = new Integer(a[i]);
if(!list.contains(temp)){
list.add(temp);
}else{
int j = list.indexOf(temp) ;//第一次出现
System.out.println("第"+(j+1)+"个数和第"+(i+1)+"个数重复为:"+temp);
break; //找到即退出
}
}
}
}答:肯定得循环找
但是先排序没有必要 运算量太大
我错了 写的算法复杂度太高 运算量太大 等等 正在优化答:先排序,再找,也许排序的时候就找到了.答:hash table问:java100万条数据怎么查出重复答:把数据表增加索引,提高查询效率,把数据排好序,测试查询速度,使用临时表保存排序好的数据,经过测试,处理插入100w条数据大概413秒,7分钟。问:一百万个整数,怎么查询出现两次以上的数?答:使用2层循环,用每一个数字与后面的数字进行比较,找到相同的就打印出重复数字的位置和数值,确定只有一个数字出现2次的话,找到就直接跳出循环即可,若有多个则继续循环,
import java.util.*;
public class Test{
public static void main(String[] args){
int[] a = new int[1000000];
for(int i = 0; i<1000000;i++){
a[i] = i+1; //从1--1000000没有重复的
}
a[355] = 100;//将第356个数改成100,这样就只有两个重复的数100
List
for(int i = 0 ; i < 1000000;i++){
Integer temp = new Integer(a[i]);
if(!list.contains(temp)){
list.add(temp);
}else{
int j = list.indexOf(temp) ;//第一次出现
System.out.println("第"+(j+1)+"个数和第"+(i+1)+"个数重复为:"+temp);
break; //找到即退出
}
}
}
}答:肯定得循环找
但是先排序没有必要 运算量太大
我错了 写的算法复杂度太高 运算量太大 等等 正在优化答:先排序,再找,也许排序的时候就找到了.答:hash table问:java100万条数据怎么查出重复答:把数据表增加索引,提高查询效率,把数据排好序,测试查询速度,使用临时表保存排序好的数据,经过测试,处理插入100w条数据大概413秒,7分钟。问:一百万个整数,怎么查询出现两次以上的数?答:使用2层循环,用每一个数字与后面的数字进行比较,找到相同的就打印出重复数字的位置和数值,确定只有一个数字出现2次的话,找到就直接跳出循环即可,若有多个则继续循环,
本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时删除处理。
毕业论文检测相关资讯
学术不端查重入口
检查语种:中文
预计时间:60分钟
系统说明学位论文查重,全球中文文献相似度比对系统,运营多年来,已经发展成为可信赖的中文原创性检查和预防剽窃的在线系统。系统自主研发的动态指纹越级扫描检测技术,已经是国内外其它检测系统所用技术前列,成为论文抄袭检测技术的系统。
检查范围学术期刊和学位论文
3.00元/千字
立即检测
检查语种:中文,英文
预计时间:60分钟
系统说明学位论文查重,维普查重系统是国内知名数据公司。本系统含有硕博库、期刊库和互联网资源等。支持中文、英文、繁体、小语种论文检测,最多支持10万字符。
检查范围毕业生论文检测
35.00元/篇
立即检测
检查语种:中文
预计时间:1小时-24小时
系统说明万方职称论文检测系统,适用于职称发表/未发表论文查重,注:上传论文请标注发表日期,如无则使用论文正式发表时间;如未公开发表的,则用论文完成时间作为发表日期。
检查范围职称论文
6.00元/千字
立即检测