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

作者:弱弱的初学者 时间:2023-11-20 09:26: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实现选择排序,插入排序,冒泡排序,以及两个有序数组的合并

以上所述是小编给大家介绍的JAVA实现选择排序,插入排序,冒泡排序,以及两个有序数组的合并详解整合网站的支持!

来源:https://www.cnblogs.com/shengxu/p/10561530.html

标签:JAVA,选择排序,插入排序,冒泡排序,有序数组,合并
0
投稿

猜你喜欢

  • Android图片加载缓存框架Glide

    2021-11-13 12:43:02
  • android studio2.3如何编译动态库的过程详解

    2023-07-11 03:47:48
  • C# SendMail发送邮件功能实现

    2022-05-02 19:40:43
  • Maven项目修改JDK版本全过程

    2021-07-19 12:13:29
  • Android自定义ViewGroup实现带箭头的圆角矩形菜单

    2022-11-26 14:40:25
  • java音乐播放器实现代码

    2022-08-29 08:41:22
  • C#中Thread(线程)和Task(任务)实例详解

    2022-06-24 19:34:20
  • Android实现带数字的圆形进度条(自定义进度条)

    2023-07-19 21:37:20
  • c#实现获取字符串阵列中元素最长或最短的长度

    2022-08-22 08:54:01
  • C语言实现代码雨效果

    2021-11-26 18:11:20
  • Mybatis Plus select 实现只查询部分字段

    2022-07-23 18:51:32
  • 23种设计模式(19)java责任链模式

    2021-10-19 15:04:00
  • Android TabLayout 实现底部Tab的示例代码

    2023-09-16 12:21:17
  • android客户端从服务器端获取json数据并解析的实现代码

    2023-09-30 07:52:20
  • 关于Android实现简单的微信朋友圈分享功能

    2021-07-01 16:49:49
  • Android OkHttp代理与路由的彻底理解

    2023-03-17 01:21:51
  • 一篇文章让你弄懂Java运算符

    2023-12-02 20:16:41
  • Android仿微博个人详情页滚动到顶部的实例代码

    2021-10-29 15:32:34
  • Android自定义垂直拖动seekbar进度条

    2023-03-21 13:19:02
  • 一文探寻Java装箱和拆箱的奥妙

    2022-08-15 21:41:21
  • asp之家 软件编程 m.aspxhome.com