如下
package com.zzh; import java.util.Scanner; /** * Created by 1 on 2017/4/10. *排序算法类的模板 */ public abstract class Example { public static void sort(Comparable[] a){ int N=a.length; for (int i = 0; i < N; i++) { int min=i; for (int j = i+1; j < N; j++) { if (less(a[j], a[min])) { min=j; } } exch(a, i, min); } } public static boolean less(Comparable v, Comparable w){ //对元素进行比较 return v.compareTo(w)<0; } public static void exch(Comparable[] a,int i,int j){ //交换元素 Comparable t=a[i]; a[i]=a[j]; a[j]=t; } public static void show(Comparable[] a){ //在单行中打印数组 for(int i=0;i<a.length;i++){ System.out.print(a[i]+""); System.out.println(); } } public static boolean isSorted(Comparable[] a){ //测试数组元素是否有序 for(int i=0;i<a.length;i++){ if(less(a[i],a[i-1])){ return false; } } return true; } public static void main(String[] args){ Scanner scanner=new Scanner(System.in); while (scanner.hasNext()){ String line=scanner.nextLine(); String[] a=line.split(" "); sort(a); assert isSorted(a); show(a); } } }
原文:https://www.cnblogs.com/zhuzehua/p/10840739.html