package paixu;
/**
*
* @author asus
*插入排序
*思想:将一个无序的数插入到一个有序的数列中
*/
public class ChaRu extends Sort{
public void sort(Comparable[] a){
int n=a.length;//数组长度
for (int i = 1; i < n; i++) {
for(int j=i;j>0 && (Sort.less(a[j], a[j-1]));j--){
Sort.exch(a, j, j-1);
}
}
}
public static void main(String[] args) {
Comparable[] a = {6,5,23,665,121,23};
XuanZe xz=new XuanZe();
xz.sort(a);
xz.show(a);
}
}
哎呀 忘说了 这里面使用了一些父类的方法 父类在上一篇有代码
package paixu;
/**
*
* @author asus
*快速排序-------交换排序的一种
*/
public class KuaiSu extends Sort{
public void sort(Comparable[] a,int lo,int hi){
int j=KuaiSu(a, lo, hi);
KuaiSu(a,lo,j-1);
KuaiSu(a,j+1,hi);
}
public int KuaiSu(Comparable[] a,int lo,int hi){
int i=lo;
int j=hi+1;
Comparable v=a[lo];
while(true){
while(Sort.less(v, a[++i]))
if(i>=hi) break;
while(Sort.less(a[--j],v ))
if(j<=lo) break;
if(i>=j) break;
Sort.exch(a, i, j);
}
Sort.exch(a, lo, j);
return j;
}
public static void main(String[] args) {
Comparable[] a = {6,5,23,665,121,23};
XuanZe xz=new XuanZe();
xz.sort(a);
xz.show(a);
}
}
明天面试一定要过呀!!!!