Java:直接插入排序
直接插入排序就是直接将一个数插入到有序的 序列中,对于数组n,可你看作是两个序列,第一个序列是数组的第一个元素,第二个序列是原数组,将第二个序列依次插入到第一个序列中,下面实现 方法:
sort方法是将一个元素让入到有序数列中,
insertSort方法是对整个数组的操作
public class InsterSort<T extends Comparable<T>> {
public static void main(String args[]) {
Integer[] arr = {1, 9, 2, 3, 45, 23, 16, 15, 89, 25};
Integer[] brr = {6,12,15, 9, 10, 11};
String [] crr={"cd","abc","abcd","cdd"};
InsterSort<String> a = new InsterSort<String>();
a.insertSort(crr);
System.out.println(Arrays.toString(crr));
}
public void insertSort(T[] brr){
for(int i=1;i<brr.length;i++){
sort(brr,i);
}
}
public void sort(T [] arr,int pos){
T temp=arr[pos];
int i;
for(i=pos-1;i>=0;i--){
if(temp.compareTo(arr[i])<0){
arr[i+1]=arr[i];
}
else{
break;
}
}
arr[i+1]=temp;
}
}