package sort;
public class InsertSort {
private long a[];
private int size;
public InsertSort(int max){
a=new long [max];
size=0;
}
public void sort(){
for(int out=1;out<size;out++){
long temp=a[out];
int in=out;
while(in>0&&temp<a[in-1]){
a[in]=a[in-1];
in--;
}
a[in]=temp;
}
}
public long median(){
return a[size/2];
}
public void insert(long value){
a[size]=value;
size++;
}
public void display(){
for(int i=0;i<size;i++){
System.out.print(a[i]+" ");
}
System.out.println();
}
public boolean contain(long value,int index){
for(int i=0;i<index;i++){
if(value==a[i]){
return true;
}
}
return false;
}
//去重
public void noDups(){
int j;
for(int i=1;i<size;i++){
if(contain(a[i],i)){
for(j=i;j<size-1;j++){
a[j]=a[j+1];
}
i--;
size--;
}
}
}
public static void main(String [] args){
InsertSort array=new InsertSort(10);
array.insert(22);
array.insert(11);
array.insert(3);
array.insert(2);
array.insert(2);
array.insert(2);
array.insert(111);
array.insert(4);
array.insert(66);
array.insert(66);
System.out.println("排序前数组:");
array.display();
array.sort();
System.out.println("排序后数组: ");
array.display();
System.out.println("去重后数组: ");
array.noDups();
array.display();
}
}
插入排序
最新推荐文章于 2024-04-29 15:53:56 发布