有10个数字(1,2,3,4,5,6,7,8,9,10) 取出一个 x,判断取出哪个数字

有10个数字(1,2,3,4,5,6,7,8,9,10)取出一个x,判断取出哪个数字,通过算法去求取出的那个数字是几?通过php算法求出,其他代码也行... 有10个数字(1,2,3,4,5,6,7,8,9,10) 取出一个 x,判断取出哪个数字,通过算法去求取出的那个数字是几? 通过php算法求出, 其他代码也行 展开
 我来答
戚叡8Z
2018-08-15
知道答主
回答量:18
采纳率:75%
帮助的人:6.9万
展开全部

算法过程:

1、随机在10个数字里面取一个数字x,可利用随机函数通过取下标的方式取得10个数里面的任意一个,由此保证随机性。

2、遍历十个数的每个数是否与取得的数字相同,如果相同,则那个数就是所取得的未知数x

java代码:

	public static void main(String[] args) {
//由于指定了数字池,所以先存放到一个数组里面
int[] numPool = {1,2,3,4,5,6,7,8,9,10};
Random rd = new Random();
int rn = (rd.nextInt(10)); //随机生成0-9的数字作为下标
System.out.println("随机取一个数字x...");
int x = numPool[rn]; //取出随机取出的未知数x,存至resultNum变量内
for(int i=0;i<10;i++) { //利用简单for循环遍历数组
if(resultNum==numPool[i]) { //比较数组中的每个数与未知数x,如果相同,则输出
System.out.println("所取得的数字是:"+numPool[i]); 
System.out.println("随机取得的数字x为:"+resultNum);
}
}
}

其他语言代码大同小异

追问
如果你手上没有X值呢(假设这个值丢失了)
是要查找一遍,哪个数字不存在,就代表是X值吗?有没有其他方案,这是个面试题,我面试这么回答的,面试官不太满意。请问你还有更好的方法吗?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式