将1-100不重复地存放到长度为98的数组中,找出未存入的两个数(求java程序)。

 我来答
优质内容提供者andy
2016-08-01 · TA获得超过1561个赞
知道大有可为答主
回答量:2551
采纳率:72%
帮助的人:760万
展开全部
package com.zhidao.www;

import java.util.ArrayList;

public class TestMap {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

ArrayList array = new ArrayList();

ArrayList positionarray = new ArrayList();
Integer[] num = new Integer[98];

for(int i = 1; i <= 100; i++){
array.add(new Integer(i));
}
int i = 0;
while(true){

int position = (int)(100*Math.random());

if(!positionarray.contains(position)){
positionarray.add(position);
num[i] = (Integer) array.get(position);

i++;
if(i == 98){
break;
}
}
}

for(int j = 0; j < 98; j++){
System.out.print(num[j] + "\t");
array.remove(new Integer(num[j]));
}
System.out.println();
System.out.println(array.toString());
}

}
自己一行一行写野握的请采颂信庆纳坦稿。
zhang江湖小子
2018-04-02
知道答主
回答量:26
采纳率:0%
帮助的人:2.6万
展开全部
//将一个1-100之间的数不重复的存在一个长度为【腔冲简98】的数组里判纯,找到没有存入的数字
int [] arr=new int[98];
for(int i=0;i<arr.length;i++) {
int r=(int)(Math.random()*(100-1+1)+1);
arr[i]=r;
for(int j=0;j<i;j++) {
if(arr[i]==arr[j]) {
i--;
break;
}
}
}

int temp;
for(int n=0;n<arr.length-1;n++) {//按升序排列
for(int m=0;m<arr.length-1-n;m++) {
if(arr[m]>arr[m+1]) {
temp=arr[m];
arr[m]=arr[m+1];
arr[m+1]=temp;
}
}
}

/* for(int k=0;k<arr.length;k++) {
if(k%10==0&&k!=0) {
System.out.println();
}
System.out.print(arr[k]+"伍裤\t");
}*/

for(int k=0;k<arr.length-1;k++) {
if((1+arr[k])!=arr[k+1]) {//升序排列后 如果前面一个元素+1不等于后一个元素时输出
System.out.print(arr[k]+1+"\t");
}

}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式