一个java问题,随机输入一组数字,从小到大排列,然后表示它是第几次输入的数字(问题在这),

一个java问题,随机输入一组数字,从小到大排列,然后表示它是第几次输入的数字(问题在这),
要输入几个数?8
第1个数字:4
第2个数字:3
第3个数字:2
第4个数字:1
第5个数字:8
第6个数字:7
第7个数字:6
第8个数字:5
第1个数字:1(原来的第4个数字)
第2个数字:2(原来的第3个数字)
第3个数字:3(原来的第2个数字)
第4个数字:4(原来的第1个数字)
第5个数字:5(原来的第8个数字)
第6个数字:6(原来的第7个数字)
第7个数字:7(原来的第6个数字)
第8个数字:8(原来的第5个数字)
import java.util.Scanner;
class ArrayDemo04 {
public static void main(String args[]) {
int item[] = new int[100];
int a,b,t;
int count;
Scanner sc = new Scanner(System.in);
System.out.print("要输入几个数?");
count=sc.nextInt();
for(a=0; a item[b]){
t = item[b-1];
item[b-1] = item[b];
item[b] = t;
}
}
for(t=0; t
liuyu442 1年前 已收到1个回答 举报

凡_rr 幼苗

共回答了13个问题采纳率:100% 举报

弄一个Map集合就可以了,把第一个输入的数字当做key,1当做value.依次类推.
然后将key进行排序,然后依次用key获取value.

1年前 追问

6

liuyu442 举报

这么快啊,谢谢了,不过我还是不懂。初学者阿

举报 凡_rr

Map集合是用键值对来进行存储的集合(key-value),Map自身提供方法通过key的值来找value。 Map就是声明了一个Map集合,其中的key的类型为int(第一个int),value的类型为int(第二个int)。同时将key保存在一个list集合中,将其排序。 输出的时候可以用list[0](排序后第一个元素),map.get(list[0])(get(key)则是通过key值来找value)。

liuyu442 举报

您看看我补充的问题,那个怎么解决

举报 凡_rr

Scanner sc = new Scanner(System.in); Map map = new Map(); System.out.print("要输入几个数? "); count=sc.nextInt(); for(a=0; a
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 18 q. 2.524 s. - webmaster@yulucn.com