java从键盘读入10个整数,并对它们进行排序,按由大到小的顺序从控制台输出

 我来答
simpledong
2011-05-16 · 超过27用户采纳过TA的回答
知道答主
回答量:69
采纳率:0%
帮助的人:0
展开全部
请考虑使用快速排序
例如:
public class QuickSort {

private static int[] input = { 3, 5, 3, 76, 45, 23, 7, 44, 25, 54 };

private static void exchange(int from, int to) {
int temp = input[from];
input[from] = input[to];
input[to] = temp;
}

private static int partition(int p, int r) {
int x = input[r];
int i = p - 1;
for (int j = p; j < r; j++) {
if (input[j] <= x) {
i++;
exchange(i, j);
}
}
exchange(i + 1, r);
return i + 1;
}

private static void quickSort(int p, int r) {
if (p < r) {
int q = partition(p, r);
quickSort(p, q - 1);
quickSort(q + 1, r);
}
}

private static void printResult() {
for (int i = 0; i < input.length; i++) {
System.out.println("Index : " + i + "; Value = " + input[i]);
}
}

// nlgn
public static void main(String[] args) {
quickSort(0, input.length - 1);
printResult();
}
}
霜_河
推荐于2018-03-26 · TA获得超过479个赞
知道小有建树答主
回答量:277
采纳率:0%
帮助的人:214万
展开全部
public class Test {

public static void main(String[] args) {
while (true) {
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
System.out.println("请输入你要排序的数字,用逗号分隔:");
String s = "";
try {
s = br.readLine();
//此处可以验证输入的是否符合要求,略
String[] newstr = s.split(",");

int[] aa=new int[newstr.length];
int k=0;
for(String s1:newstr)
{
aa[k]=Integer.parseInt(s1);
k++;
}

Arrays.sort(aa);
for(int s2:aa)
{
System.out.println(s2);
}

} catch (IOException e) {
System.out.println("程序出错:" + e.getMessage());
}
}
}
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
踏月听音
2011-05-16 · TA获得超过132个赞
知道小有建树答主
回答量:321
采纳率:0%
帮助的人:162万
展开全部
先使用循环用Scanner接收值存储在数组里面 然后 把每个值取出来做判断 if(a〉b)temp=a;a=b;b=temp;(需要用嵌套循环)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
飞就飞燕
2011-05-16 · TA获得超过270个赞
知道答主
回答量:80
采纳率:0%
帮助的人:62.5万
展开全部
同学,要厚道,你怎么能没分呢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式