首页 > 编程 > Java > 正文

浅谈JAVA实现选择排序,插入排序,冒泡排序,以及两个有序数组的合并

2019-11-26 09:10:40
字体:
来源:转载
供稿:网友

一直到大四才开始写自己的第一篇博客,说来实在有点羞愧。今天写了关于排序的算法题,有插入排序,冒泡排序,选择排序,以下贴上用JAVA实现的代码:

public class test5{   public static void print(int []array)       //输出数组方法  {    for(int i=0;i<array.length;i++)    System.out.print(" "+array[i]);       }     public static void selectsort(int array[])    //选择排序方法  {       for (int i = 0; i < array.length; i++)    {         int min=i;      for(int j=i+1;j<array.length;j++)      if(array[min]>array[j])        min =j;      if(i!=min)      {        int temp=array[i];        array[i]=array[min];        array[min]=temp;      }    }  }     public static void insertsort(int array[])    //插入排序方法  {    for (int i = 1; i < array.length; i++)    {      int a=array[i];      int j=i-1;      for(;j>=0;j--)      {        if(a<array[j])        array[j+1]=array[j];          else          break;      }      array[j+1]=a;    }  }        public static void bubblesort(int array[])  {         for(int i=0;i<array.length-1;i++)    {      for(int j=0;j<array.length-1-i;j++)      {        if(array[j]>array[j+1])        {         int temp=array[j];         array[j]=array[j+1];         array[j+1]=temp;        }      }           }       }       public static int[] merge(int a[],int b[])  {      int c[]=new int[a.length+b.length];      int i=0,j=0,k=0;      while (i<a.length&&j<b.length)      {        if (a[i]>b[j])         c[k++]=b[j++];        else         c[k++]=a[i++];      }      while(i<a.length)         c[k++]=a[i++];       while(j<b.length)         c[k++]=b[j++];      return c;  }       public static void main(String[] args)  {    int a[]={55,76,29,80,92,41,16};    int b[]={73,10,84,99,69,45};        // System.out.println("hello" );         System.out.print("数组a:" );     print(a);    System.out.print('/n');     System.out.print("数组b:" );     print(b);    System.out.print('/n');     System.out.print("选择排序:" );   //  selectsort(a);    print(a);    System.out.print('/n');    System.out.print("冒泡排序:" );     bubblesort(a);    print(a);    System.out.print('/n');    System.out.print("插入排序:" );     insertsort(b);    print(b);    System.out.print('/n');    System.out.print("合并数组:" );     print(merge(a, b));  }}

运行后的结果如下图所示 

以上所述是小编给大家介绍的JAVA实现选择排序,插入排序,冒泡排序,以及两个有序数组的合并详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对武林网网站的支持!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表