编程算法题:101个数字,[0,100]中有一个是重复的,找出这个重复的数字。

思路1:0~100肯定都存在,可以给数组求和然后减去0~100的和,剩下的就是重复的数字;
代码如下:

public class FindNumber {public static void main(String[] args) {int[] i = new int[101];findnumber(i);}private static int findnumber(int[] i) {int sum = 0;for (int j=0;j<=i.length;j++){sum=sum+=i[j]-j;}return sum;}}

思路2:1^2^3……98^99 = 0,利用异或运算;

代码如下:

public class FindNumber {public static void main(String[] args) {int[] i = new int[101];//findnumber(i);findnumber2(i);}private static int findnumber2(int[] i) {   {  int re = i[0];  for(int k=1;k<i.length;k++)  {  re = re^i[k];  }  return re;  }  }

编程算法题:101个数字,[1,100]中有一个是重复的,找出这个重复的数字。相关推荐

  1. 算法题: 一球从100米高度自由落下,每次落地后反跳回原高度的一半

    一.序言: 今天在逛C站的时候,突然发现一篇这样的文章<算法题: 一球从100米高度自由落下,每次落地后反跳回原高度的一半>.勾起了我的兴趣(就像小学生看见了加减法的题目,很兴奋,终于可以 ...

  2. 使用CE分析扫雷游戏,找到雷数的内存地址,找到低中高级的棋盘范围,找出地雷和别的数字在内存中的表示形式,猜测布雷算法

    1.找到雷数的内存地址 1.1 按照雷数精确扫描,低中高分别为10,40,99,扫描结果有三个 1.2 右键棋盘任意位置,有一个地址数值变少,则那个地址就是雷数内存地址 2.找到低中高级的棋盘范围 2 ...

  3. 算法(17)定义一个整数数组,找出连续3个元素之和是最大的,并输出这三个元素。

    写在前面: 我是「扬帆向海」,这个昵称来源于我的名字以及女朋友的名字.我热爱技术.热爱开源.热爱编程.技术是开源的.知识是共享的. 这博客是对自己学习的一点点总结及记录,如果您对 Java.算法 感兴 ...

  4. Leecode:给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数

    题目 /** * 给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数.假设只有一个重复的整数,找出这个重复的数. * 示例 ...

  5. Java黑皮书课后题第10章:*10.17(平方数)找出大于Long.MAX_VALUE的前10个平方数。平方数是指形式为n^2的数

    例如,4.9以及16都是平方数,找到一种有效方法,使程序能快速运行 题目 破题 特别提醒 代码 题目 *10.17(平方数)找出大于Long.MAX_VALUE的前10个平方数.平方数是指形式为n^2 ...

  6. 给了一串数字:218916754,根据下面规则可以找出扣扣号码:首先删除第一个数,紧接着将第二个数放到这串数字的末尾,再将第三个数删除,并将第四个数放到这串数字的末尾......如此循环,知道剩下最后

    题:给了一串数字:218916754,根据下面规则可以找出扣扣号码:首先删除第一个数,紧接着将第二个数放到这串数字的末尾,再将第三个数删除,并将第四个数放到这串数字的末尾......如此循环,知道剩下 ...

  7. 一个数组中只有两个数字是出现一次, 其他所有数字都出现了两次,找出这两个数字

    题目:一个数组中只有两个数字是出现一次, 其他所有数字都出现了两次. 找出这两个数字,编程实现. 参考代码: #include<stdio.h> #include <windows. ...

  8. Linux运维之批量下载指定网站的100个图片文件,并找出大于200KB的文件

    题目为: 有一百个图片文件,它们的地址都是 http://down.fengge.com/img/1.png http://down.fengge.com/img/2.png - 一直到http:// ...

  9. Java第三大的数,Java通过排序找出数组第三大数字

    Java通过排序找出数组第三大数字 1 方式一:对数组进行排序并返回第三大数字 通过对数组进行排序并返回第三大数字,我们可以找到java中的第三大数字.让我们看看完整的示例,以找到java数组中的第三 ...

  10. 给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增。

    //给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增. //(当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个 ...

最新文章

  1. 判断链表是否存在环(及其延伸)
  2. jQuery对象与DOM对象的相互转化
  3. 有限元ansys/lsdyna学习笔记-组件component与组元part_02
  4. 设置mysql表myisam_mysql myisam 优化设置设置
  5. 前端学习(3248):react的生命周期getSnapBeforeUpdate举例
  6. Powerful Sleep(神奇的睡眠-睡眠生物钟的秘密:如何睡得更少却睡得更好)阅读笔记...
  7. spyder替换_Spyder 快捷键大全
  8. 怎么把文件导入云服务器,怎么把文件放到云服务器里
  9. java.sql.SQLException: ORA-28001: 口令已经失效
  10. ajax提交表单,包括跳入的坑!
  11. Git 使用篇二:搭建远程服务器
  12. 计算机识别人脸原理,人脸识别:原理、方法与技术
  13. 怎么使用7zip进行分批压缩_7z解压软件(7-zip)分卷压缩怎么做?
  14. 人活着,到底为了啥?
  15. 一篇文章,中文发完英文发,算“一稿多投”吗?
  16. 移动 app安全评估检测技术分析
  17. 怎么获取计算机用户权限,W7电脑系统怎么获取administrator权限
  18. 关于巨量千川出价方法和技巧深度分析
  19. golang的乐观锁与悲观锁
  20. 叮咚买菜VS每日优鲜:同亏不同命

热门文章

  1. java基础实现一个基本的银行管理系统
  2. 易语言输出mysql日志_个人理解的易语言下的日志总结(备忘)
  3. 草图大师SketchUp2019下载与安装教程
  4. 专业PE优盘启动制作工具 - 优启通
  5. 信息学竞赛中的直觉与证明 - 刘汝佳
  6. css音乐播放器插件,jQuery MPlayer音乐播放器插件
  7. 华为认证报名费是多少?如何准备华为HCIP网络工程师考试?
  8. 康威生命游戏-蓝桥杯java
  9. jTopo 拓扑图(入门)
  10. c语言表达式优先级最高的是,C语言运算符优先级表