【Android面试】有1000个数,1000个数的大小范围是0-999,有两个相同的数字,请设计算法找出来

简介: 思路如下:1000个数字只有两个相同的数字,那就是说把数组排序后,这两个数一定相邻。通过排序算法进行排序,在循环判断相邻的数即可。

思路如下:

1000个数字只有两个相同的数字,那就是说把数组排序后,这两个数一定相邻。通过排序算法进行排序,在循环判断相邻的数即可。


//用户输入
Scanner sn=new Scanner(System.in);
//创建一个1000长度的int数组
int[] pp =new int[1000];
//给这个1000长度的int数组赋值
for (int i = 0; i <pp.length; i++) 
{
  //赋值1到1000
  pp[i]=i+1;
}
//最后的数随机输入,且是在[0,999]的范围
pp[999]=sn.nextInt();
//调用java封装好的排序方法    
Arrays.sort(pp);  
//从0排序到999
for (int i = 0; i <pp.length; i++) 
{ 
  //从i排序到999
  for (int j =i+1; j <pp.length; j++) 
  {
    //相等则输出这个数并结束循环
    if(pp[i]==pp[j]) 
    {
      System.out.println("相同的数:"+pp[i]);
      break;
    }     
  }   
}
目录
相关文章
|
12天前
|
Android开发
Android面试之Activity启动流程简述
Android面试之Activity启动流程简述
64 6
|
10天前
|
Android开发
Android面试高频知识点(1) 图解Android事件分发机制
Android面试高频知识点(1) 图解Android事件分发机制
|
10天前
|
消息中间件 存储 Java
Android面试高频知识点(2) 详解Android消息处理机制(Handler)
Android面试高频知识点(2) 详解Android消息处理机制(Handler)
|
10天前
|
XML 前端开发 Android开发
Android面试高频知识点(3) 详解Android View的绘制流程
Android面试高频知识点(3) 详解Android View的绘制流程
Android面试高频知识点(3) 详解Android View的绘制流程
|
13天前
|
消息中间件 Android开发 索引
Android面试高频知识点(4) 详解Activity的启动流程
Android面试高频知识点(4) 详解Activity的启动流程
22 3
|
13天前
|
机器学习/深度学习 算法 Java
机器学习、基础算法、python常见面试题必知必答系列大全:(面试问题持续更新)
机器学习、基础算法、python常见面试题必知必答系列大全:(面试问题持续更新)
|
14天前
|
XML 前端开发 Android开发
Android面试高频知识点(3) 详解Android View的绘制流程
Android面试高频知识点(3) 详解Android View的绘制流程
19 2
|
14天前
|
消息中间件 存储 Java
Android面试高频知识点(2) 详解Android消息处理机制(Handler)
Android面试高频知识点(2) 详解Android消息处理机制(Handler)
37 1
|
14天前
|
Android开发
Android面试高频知识点(1) 图解 Android 事件分发机制
Android面试高频知识点(1) 图解 Android 事件分发机制
30 1
|
18天前
|
算法 Java 数据库
美团面试:百亿级分片,如何设计基因算法?
40岁老架构师尼恩在读者群中分享了关于分库分表的基因算法设计,旨在帮助大家应对一线互联网企业的面试题。文章详细介绍了分库分表的背景、分片键的设计目标和建议,以及基因法的具体应用和优缺点。通过系统化的梳理,帮助读者提升架构、设计和开发水平,顺利通过面试。
美团面试:百亿级分片,如何设计基因算法?