📄 selecttest.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 + -