《数据结构与算法》学习笔记7 插入排序

来源:互联网 发布:wget yum 安装包 编辑:程序博客网 时间:2024/05/04 14:06

简单排序:

public class ArrayIns {  private long[] a;  private int size;    public ArrayIns(int num){  a=new long[num];  size=0;  }    public void insert(long value){  a[size]=value;  size++;  }    public void display(){  for(int i=0;i<size;i++)  System.out.println(a[i]);  }  //  public void insertSort(){//  int num=0;//  for(int i=0;i<size;i++){//  Sort(num,a[i]);//  num++;//  }//  }//  //  public void Sort(int num,long value){//  int i;//  for(i=0;i<num;i++){//  if(a[num-1]<=value) a[num]=value;       //value 大于所有的数//  else if(a[i]>value) {                  //value比某些数小//  for(int k=num;k>i;k--)//  a[k]=a[k-1];//  break;//  }//  }//  a[i]=value;//  }  public void insertSort(){  int in,out;  for(out=1;out<size;out++){  long temp=a[out];  in=out;  while(in>0 &&a[in-1]>=temp){  a[in]=a[in-1];  in--;  }  a[in]=temp;  }  }  }

对象排序:

对象person

public class Person {    private String lastname;    private String firstname;    private int age;    public Person(String l,String f,int n){    lastname=l;    firstname=f;    age=n;    }        public void display(){    System.out.println("firstname:"+firstname+" lastname:"+lastname+" age:"+age);    }        public String getLast(){    return  lastname;    }    public int getAge(){    return age;    }}

数组类:

public class ArrayObj {  private Person[] arr;  private int size;    public ArrayObj(int max){  arr=new Person[max];  size=0;  }    public void insert(Person p){  arr[size]=p;  size++;  }    public void display(){  for(int i=0;i<size;i++){  arr[i].display();  }  }    public void ObjSort(){  int out,in;  for(out=1;out<size;out++){  Person p=arr[out];  in=out;  while(in>0 && arr[in-1].getAge()>=p.getAge()){  arr[in]=arr[in-1];  in--;  }  arr[in]=p;  }  }  }

public class ArrayObjApp {public static void main(String[] args){    ArrayObj arr=new ArrayObj(10);    Person p1=new Person("liu","zh",12);    Person p2=new Person("zhang","wq",23);    Person p3=new Person("pai","sd",5);    arr.insert(p1);    arr.insert(p2);    arr.insert(p3);    arr.ObjSort();    arr.display();    }}



0 0
原创粉丝点击