淺談JAVA實現選擇排序,插入排序,冒泡排序,以及兩個有序數組的合并
更新時間:2019年03月21日 10:03:39 作者:弱弱的初學者
這篇文章主要介紹了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));
}
}
運行后的結果如下圖所示

以上所述是小編給大家介紹的JAVA實現選擇排序,插入排序,冒泡排序,以及兩個有序數組的合并詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
相關文章
springboot引入遠程nacos配置文件錯誤的解決方案
本文為解決Spring Cloud Alibaba中配置導入問題,提供了詳細的步驟說明,包括引入依賴、配置nacos、創(chuàng)建bootstrap.yml文件以及測試配置導入是否成功的方法,幫助開發(fā)者快速解決相關問題2024-09-09
java.net.http.HttpClient使用示例解析
這篇文章主要為大家介紹了java.net.http.HttpClient使用示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-08-08
Spring Boot 整合 Mockito提升Java單元測試的高效實踐案例
Mockito與Spring Boot的整合為Java開發(fā)者提供了一套完整的解決方案,使得單元測試更為精準、高效,從而確保了代碼質量、降低了維護成本,并促進了項目的持續(xù)集成與交付,感興趣的朋友跟隨小編一起看看吧2024-04-04
Spring?Data?JPA框架的核心概念與Repository接口詳解
Spring?Data?JPA是Spring基于JPA規(guī)范的基礎上封裝的?套?JPA?應?框架,可使開發(fā)者?極簡的代碼即可實現對數據庫的訪問和操作,本篇我們來了解Spring?Data?JPA框架的核心概念與Repository接口2022-04-04
Springboot MDC+logback實現日志追蹤的方法
MDC(Mapped Diagnostic Contexts)映射診斷上下文,該特征是logback提供的一種方便在多線程條件下的記錄日志的功能,這篇文章主要介紹了Springboot MDC+logback實現日志追蹤的方法,需要的朋友可以參考下2024-04-04

