评论

收藏

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

编程语言 编程语言 发布于:2021-09-18 11:00 | 阅读数:446 | 评论:0

这篇文章主要介绍了JAVA实现选择排序,插入排序,冒泡排序,以及两个有序数组的合并,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
一直到大四才开始写自己的第一篇博客,说来实在有点羞愧。今天写了关于排序的算法题,有插入排序,冒泡排序,选择排序,以下贴上用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));
  }
}
运行后的结果如下图所示
DSC0000.png

以上所述是小编给大家介绍的java实现选择排序,插入排序,冒泡排序,以及两个有序数组的合并详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对CodeAE代码之家网站的支持!
原文链接:https://www.cnblogs.com/shengxu/p/10561530.html
关注下面的标签,发现更多相似文章