⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 selecttest.java

📁 java程序设计 清华出版社 孙燮华老师编写的程序源代码
💻 JAVA
字号:
//selectTest.java
class SelectSort{
  static void sort(int arr1[]){    //成员方法的形参是数组
    int i, j, k=0, t;
    int len=arr1.length;
    for(i=0;i<len-1;i++){           //外循环开始
      k=i;
      for(j=i+1;j<len;j++)
        if(arr1[j]<arr1[k])  k=j;   //内循环只用k记录最小值的下标
      if(k>i){
        t=arr1[i];                  //在外循环实施交换,可减少交换次数
        arr1[i]=arr1[k];
        arr1[k]=t;
      } //if(k>i)结束
      /* 删除此处注释号,可以输出中间结果,用于验证算法
      System.out.print("中间结果:i = " + i + ", k = " + k + ": ");
      for(int l=0;l<len;l++)
        System.out.print(" "+arr1[l]); 
      System.out.println("\n");
      */
    } //外循环for(i)结束
  } //成员方法sort定义毕
}

public class selectTest extends SelectSort{
  public static void main(String[] args){
    int arr[]={78,70,2,5,-98,7,10,-1};
    int len=arr.length;
    SelectSort.sort(arr);         //数组名作为成员方法的实参
    System.out.print("选择法排序的结果:");
    System.out.println("length= "+arr.length);
    for(int i=0;i<len;i++)
      System.out.print(" "+arr[i]); //数组arr的值已在方法调用中被改变了
    System.out.println("\n");
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -