给出10个数,使用某种排序方法,按照从小到大的顺序输出个个数。

根据要求,首先得给出这10个数,这里的算法需要一个循环,数据结构需要一个长度为10的整型数组。首先用BufferedReader in=new BufferedReader(new InputStreamReader(System.in));从键盘接收数据,然后定义一个数组int a[ ]=new int[10];用来存放数据,接下来就是将每个数字存入for(i=0;i<=9;i++){a[i] = Integer.parseInt(in.readLine()); }。然后就是排序了。凡是排序基本上都是二重循环。这里可以采用这种思路:从第一个数开始,每个数与它后面的那个数比较,把较小的放到前面,较大的放到后面。这样从前到后走一遍,最大的数就放到最后了。这样从第一个数到倒数第二个数就构成了外面的那层循环,即for(i=0;i<=8;i++)。而内层循环就是对下标为i的数来说,从它开始拿它和它后面的数比,小的放前面大的放后面。因为这里是以它后面的数到头为止,所以得另设一个整型变量j=i+1来表示“后面的数”的下标,故内层循环为for(j=i+1;j<=9;j++)。循环体按照小前大后的思路,用一个中间变量倒腾一下就行了if(a[i]>a[j]){t=a[i];a[i]=a[j];a[j]=t;}。

完整代码如下:

import java.io.*;
public class shiyan25 { /**
* @param args
*/
public static void main(String[] args) {
try
{
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
int i,n=10;
int a[ ]=new int[10];
System.out.println("请输入10个整数:");
for(i=0;i<=9;i++){
a[i] = Integer.parseInt(in.readLine());
}
int j,t;
for(i=0;i<=8;i++){
for(j=i+1;j<=9;j++){
if(a[i]>a[j]){
t=a[i];a[i]=a[j];a[j]=t;
}
}
}
for(i=0;i<10;i++){
System.out.print(a[i]+" ");
}
}
catch(Exception e){ }
}
}

效果如图:

Java排序的更多相关文章

  1. 常用Java排序算法

    常用Java排序算法 冒泡排序 .选择排序.快速排序 package com.javaee.corejava; public class DataSort { public DataSort() { ...

  2. java排序集锦

    java实现排序的一些方法,来自:http://www.javaeye.com/topic/548520 package sort; import java.util.Random; /** * 排序 ...

  3. Java排序算法之直接选择排序

    Java排序算法之直接选择排序 基本过程:假设一序列为R[0]~R[n-1],第一次用R[0]和R[1]~R[n-1]相比较,若小于R[0],则交换至R[0]位置上.第二次从R[1]~R[n-1]中选 ...

  4. (转)JAVA排序汇总

    JAVA排序汇总 package com.softeem.jbs.lesson4; import java.util.Random; /** * 排序测试类 * * 排序算法的分类如下: * 1.插入 ...

  5. java排序算法(一):概述

    java排序算法(一)概述 排序是程序开发中一种非常常见的操作,对一组任意的数据元素(活记录)经过排序操作后,就可以把它们变成一组按关键字排序的一组有序序列 对一个排序的算法来说,一般从下面三个方面来 ...

  6. java排序算法(十):桶式排序

    java排序算法(十):桶式排序 桶式排序不再是一种基于比较的排序方法,它是一种比较巧妙的排序方式,但这种排序方式需要待排序的序列满足以下两个特征: 待排序列所有的值处于一个可枚举的范围之类: 待排序 ...

  7. java排序算法(九):归并排序

    java排序算法(九):归并排序

  8. java排序算法(八):希尔排序(shell排序)

    java排序算法(八):希尔排序(shell排序) 希尔排序(缩小增量法)属于插入类排序,由shell提出,希尔排序对直接插入排序进行了简单的改进,它通过加大插入排序中元素之间的间隔,并在这些有间隔的 ...

  9. java排序算法(七):折半插入排序

    java排序算法(七):折半插入排序 折半插入排序法又称为二分插入排序法,是直接插入排序法的改良版本,也需要执行i-1趟插入.不同之处在于第i趟插入.先找出第i+1个元素应该插入的位置.假设前i个数据 ...

  10. java排序算法(六):直接插入排序

    java排序算法(六):直接插入排序 直接插入排序的基本操作就是将待的数据元素按其关键字的大小插入到前面的有序序列中 直接插入排序时间效率并不高,如果在最坏的情况下,所有元素的比较次数的总和为(0+1 ...

随机推荐

  1. [SQL]sql介绍

    SQL语言概述 结构化查询语言(Structured Query Language,简称SQL)是一种介于关系代数与关系演算之间的语言,是一种用来与关系数据库管理系统通信的标准计算机语言.其功能包括数 ...

  2. 【转】特殊权限控制之SUID、SGID、Sticky

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://soysauce93.blog.51cto.com/7589461/1715583 ...

  3. flex使用buttonbar为viewstack添加导航功能

    先建立一个Main.mxml的应用程序,作为一个主程序,再建立两个component ,一个是jiaju.mxml ,另一个是dianqi.mxml. Main.mxml:  <?xml ver ...

  4. js实现自动登陆的按钮

    自动按钮,只要实现当移入是提示用户不要在公共地方使用自动登陆 主要用onmouseover函数,本来提示div隐藏,当移入时div显示. <style type="text/css&q ...

  5. http 302

    404 not found500 internal server error 302临时重定向.指被访问的网页由于各种需求临时跳转到其它页面. yii若用户为游客状态,但controller中添加了权 ...

  6. lib制作

    生成模拟器和真机通用lib命令: lipo -create libKIF-os.a libKIF-simulator.a -output libKIF.a. 需要cd到  愿文件.a所在的目录. li ...

  7. C#中List集合转换JSON

    #region 将List<>转换为Json public string List2JSON(List<object> objlist, string classname) { ...

  8. Retrofit入门

    1 Retrofit retrofit = new Retrofit.Builder() .addConverterFactory(ScalarsConverterFactory.create()) ...

  9. 【Spring 2】spring的属性注入形式

    一.注入简介 spring是一个java bean的容器,它摒弃了过去通过new关键字调用类再调用类的实例的形式,通过依赖注入维护者一系列的java  bean的示例.通过spring所提供的依赖注入 ...

  10. pyrrd 程序

    http://elekslabs.com/2013/12/rrd-and-rrdtool-sar-graphs-using-pyrrd.html http://thepiandi.blogspot.j ...