A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© fenger7 中级黑马   /  2015-10-19 20:18  /  310 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

//文件名:Exam12.java
import java.io.*;
public class Exam12 //定义类名
{
  //选择排序(从小到大)
  static void select(int num[],int count)
  {
     int tmp;
     int midIndex;//用于记住最小值下标
     for(int i=0;i<count;i++)
     {
       midIndex=i;//每次都假设i所在位置的元素是最小的
       for(int j=i+1;j<count;j++)
       //j从i+1开始,i之前的都已排好,而i是本次的第一个元素
       {
          if(num[midIndex]>num[j])
               midIndex=j;
        }
       //把当前最小元素跟前面第i个元素交换
       if(midIndex!=i)
        {
           tmp=num[i];
           num[i]=num[midIndex];
           num[midIndex]=tmp;
         }
       }
   }
  //输出数组的元素值
  //num:待输出的数组
  //count:元素个数
  static void printArray(int num[],int count)
  {
     for(int i=0;i<count;i++)
     {
        System.out.print(num[i]+" ");
      }
      System.out.println();
   }
   public static void main(String[] args)
   //主方法,程序从这里开始执行
   {
     int values[]={2,5,1,4,3};
     int count=values.length;
     select(values,count);
     printArray(values,values.length);
    }
}

1 个回复

倒序浏览
for循环,嵌套一个for循环,然后再来一个if语句,就OK 了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马