美文网首页
日志8.29:排序(复习)

日志8.29:排序(复习)

作者: 莫唁 | 来源:发表于2015-08-30 01:09 被阅读17次

    今天没有看新的内容,就总结一下原来看到的几种排序方法,现在好像也只能写出三种排序:冒泡、选择和插入排序法,另外再补充一个二分法的查找方法,总结如下:

    public class Rank

    {

    public void geta(int a[])

    {

    for(int i=0;i<a.length;i++)

    a[i]=(int)(Math.random()*100);

    }

    public void print(int a[])

    {

    for(int i=0;i<a.length;i++)

    System.out.print(a[i]+" ");

    System.out.println();

    }

    public void maopao(int a[])

    {

    int temp;

    for(int i=0;i<a.length-1;i++)

    for(int j=0;j<a.length-1-i;j++)

    {

    if(a[j]>a[j+1])

    {

    temp=a[j];

    a[j]=a[j+1];

    a[j+1]=temp;

    }

    }

    }

    public void xuanze(int a[])

    {

    int temp;

    for(int i=0;i<a.length-1;i++)

    for(int j=i+1;j<a.length;j++)

    {

    if(a[i]>a[j]

    {

    temp=a[i];

    a[i]=a[j];

    a[j]=temp;

    }

    }

    }

    public void charu(int a[])

    {

    int insert;

    for(int i=0;i<a.length;i++)

    {

    insert=a[i]

    for(int j=0;j<i;j++)

    {

    if(a[j]<a[i])

    {

    insert=a[i];

    a[i]=a[j];

    a[j]=insert;

    }

    }

    }

    }

    public void erfenfa(int a[],int x,int left,int right)

    {

    int mid=(left+right)/2;

    if(left<=right)

    {

    if(x<a[mid])

    erfenfa(a,x,left,mid-1);

    else if(x>a[mid])

    erfenfa(a,x,mid+1,right);

    else

    System.out.println("找到该数是第"+(mid+1)+"个");

    }

    }

    public static void main(String args[])

    {

    int a[]=new int[9];

    Rank rank=new Rank();

    rank.geta(a);

    System.out.print("原数组为:")

    rank.print(a);

    }

    }

    public static void main(String args[])

    {

    //主函数省略

    }

    总算写完了,还是优点忘了,困死。

    相关文章

      网友评论

          本文标题:日志8.29:排序(复习)

          本文链接:https://www.haomeiwen.com/subject/vowkcttx.html