A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王震阳老师   /  2014-11-1 09:40  /  19771 人查看  /  472 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

陈宁 发表于 2014-12-10 23:20
老师,请验收!

不错:
  1. package day16;

  2. import java.util.Arrays;

  3. /*
  4. * 已知一个数组int[98],该数组里面存储了0~99共100个数字中的98个,
  5. * 数字不重复,请用算法算出0~99中缺少的2个数字是哪两个?
  6. * 要求:数组自己用程序生成,数值介于0~99,相互之间不重复。
  7. */
  8. public class TweryFour {
  9.         public static void main(String[] args) {
  10.                 int [] ch=new int[98];
  11.                 int [] chs=new int[100];
  12.                
  13.                 for(int a=0;a<chs.length;a++){
  14.                         chs[a]=a;
  15.                 }
  16.                 boolean [] flags=new boolean[chs.length];
  17.                 int index;
  18.                 for(int a=0;a<ch.length;a++){
  19.                         do{
  20.                                 index=(int)(Math.random()*100);
  21.                         }while(flags[index]==true);
  22.                         flags[index]=true;
  23.                         ch[a]=chs[index];
  24.                 }
  25.                 Arrays.sort(ch);
  26.                 System.out.println("生成 的数组为:"+Arrays.toString(ch));
  27.                
  28.                 int time=0;
  29.                 for(int a=0;a<chs.length;a++){
  30.                         int count=0;
  31.                         for(int b=0;b<ch.length;b++){
  32.                                 if(ch[b]==chs[a]){
  33.                                         break;
  34.                                 }else{
  35.                                         count++;
  36.                                         if(count==98){
  37.                                                 time++;
  38.                                                 System.out.println("缺少的第"+time+"个数是:"+chs[a]);
  39.                                         }
  40.                                 }
  41.                         }
  42.                 }
  43.         }
  44. }
复制代码
回复 使用道具 举报
看看往期题目
回复 使用道具 举报
顶贴,领题
回复 使用道具 举报
大牛是用来顶礼膜拜的
回复 使用道具 举报
上传。。。。。。。。。

无标题.jpg (82 KB, 下载次数: 7)

无标题.jpg

Test24.zip

779 Bytes, 阅读权限: 200, 下载次数: 1

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
598037136 发表于 2014-12-13 15:47
上传。。。。。。。。。

不是重复的数字,是不存在的数字:
  1. import java.util.*;

  2. /*
  3. * 已知一个数组int[98],该数组里面存储了0~99共100个数字中的98个,
  4. * 数字不重复,请用算法算出0~99中缺少的2个数字是哪两个?
  5. 要求:数组自己用程序生成,数值介于0~99,相互之间不重复。
  6. 上传代码的时候将运算结果截图一起提交。
  7. * */
  8. public class Test24 {

  9.         static int[]arr=new int[98];
  10.         static Set<Integer>set=new TreeSet<Integer>();
  11.         static Random r=new Random();
  12.         public static void main(String[]args)
  13.         {
  14.                 fillArr();
  15.                 print("初始化数组:"+Arrays.toString(arr));
  16.                 fillSet();
  17.                 doubleNum();
  18.                 print("重复的数字:"+set);
  19.         }
  20.         public static void fillArr()
  21.         {
  22.                 for(int x=0;x<98;)
  23.                 {
  24.                         int num=r.nextInt(100);
  25.                         if(set.add(num))
  26.                         {
  27.                                 arr[x]=num;
  28.                                 x++;
  29.                         }
  30.                 }
  31.         }
  32.         public static void fillSet()
  33.         {
  34.                 while(set.size()!=100)
  35.                         set.add(r.nextInt(100));
  36.         }
  37.         public static void doubleNum()
  38.         {
  39.                 ArrayList<Integer>al=new ArrayList<Integer>();
  40.                 for(int x:arr)
  41.                         al.add(x);
  42.                 set.removeAll(al);
  43.         }
  44.         public static void print(Object obj)
  45.         {
  46.                 System.out.println(obj);
  47.         }
  48. }
复制代码
回复 使用道具 举报
学习学习
回复 使用道具 举报
WakeUp 发表于 2014-11-1 10:22
提交,阳哥求阅~

求代码  大神  不作弊 只想知道怎么做的  谢谢
回复 使用道具 举报
领题看看···············
回复 使用道具 举报
提交,看看··········

结果.PNG (7.58 KB, 下载次数: 9)

结果.PNG

Test24.zip

741 Bytes, 下载次数: 31

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
kongchuiting 发表于 2014-12-15 14:40
提交,看看··········

正在努力:dizzy:
回复 使用道具 举报
本帖最后由 農邨尛夥兒 于 2014-12-15 22:54 编辑

阳哥 第一次参加
看能否给补分 嘿嘿

24期技术分活动.zip

614 Bytes, 阅读权限: 200, 下载次数: 1

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
24期继续领题
回复 使用道具 举报
阳哥,查看
  1. package exam29;

  2. public class Exam24 {

  3.         public static void main(String[] args) {
  4.           int[] ori = new int[98];
  5.           for(int i=0;i<98;i++){
  6.                   ori[i]=i+1;
  7.           }
  8.           for(int i=0;i<100;i++){
  9.                   int count=98; //总计98次
  10.                   for( int j=0;j<ori.length;j++){
  11.                           if(i==ori[j]){
  12.                           }else{
  13.                                   //如果不等则减一
  14.                                   count--;
  15.                           }
  16.                           if(count==0){ //如果减到0了,说明减了98次,说明这个i没有ori[j]跟他相等
  17.                                  System.out.print(" "+i);
  18.                           }
  19.                   }
  20.           }
  21.         }

  22. }
复制代码



4.jpg (7.43 KB, 下载次数: 7)

4.jpg

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
接着算法题。:P
回复 使用道具 举报
拿题。。。自习做
回复 使用道具 举报
领题来了
回复 使用道具 举报
请阳哥查阅

结果24.png (2.42 KB, 下载次数: 7)

结果24.png

Jishu24.zip

909 Bytes, 阅读权限: 200, 下载次数: 1

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
阳哥,第二十四期做完。程序进行了详细的注释,当然最重要的一点是:原创!
请阳哥查看。:P

技术分活动第二十四期.rar

10.46 KB, 阅读权限: 200, 下载次数: 1

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
本来以为不难的   结果还是写了一个多小时    还得多加练习啊   

无标题.png (9.63 KB, 下载次数: 5)

无标题.png

Test1221.rar

955 Bytes, 阅读权限: 200, 下载次数: 1

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马