java冒泡排序,java冒泡排序算法

本文目錄一覽:

用java寫個冒泡排序?

冒泡排序算法:

int類型的數組:3 1 6 2 5

第一次循環:

1 3 6 2 5

1 3 6 2 5

1 3 2 6 5

1 3 2 5 6

第二次循環:

1 3 2 5

1 2 3 5

1 2 3 5

第三次循環:

1 2 3

1 2 3

。。。

  算法:取出最大的放在最後,下次就不用比較最後一個了。*/

public class BubbleSort{

    public static void main(String[] args){

        int[] a = {3,1,6,2,5};

        //開始排序

        for(int i=a.length-1;i0;i–){

            for(int j=0;ji;j++){

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

                    //交換位置

                    int temp;

                    temp = a[j];

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

                    a[j+1] = temp;

                }

            }

        }

        //遍歷

        for(int i=0;ia.length;i++){

            System.out.println(a[i]);

        }

    }

}

java 冒泡排序怎麼寫?

方法一: package basic.javastu; public class NumberTest {

/** * 實現冒泡程序1 */ public static void main(String[] args) { // TODO Auto-generated method stub

int[] numb=new int[]{3,42,57,1,32,24};

int len=numb.length;

int i,j;

int temp;

System.out.println(“排序前的數組各個值:”);

for(i=0;ilen;i++)

{

System.out.print(numb[i]+”\t”);

}

System.out.println(“\n”);

for(i=1;i=len;i++)

{

for(j=len-1;j=1;j–)

{

if(numb[j]numb[j-1])

{

temp=numb[j];

numb[j]=numb[j-1];

numb[j-1]=temp;

}

}

}

System.out.println(“排序後的數組各個值:”);

for(i=0;ilen;i++)

{

System.out.print(numb[i]+”\t”);

}

}

}

方法二: package basic.javastu; public class NumberTest2 {

/** * 實現冒泡程序2 */ public static void main(String[] args) { // TODO Auto-generated method stub

int[] numb=new int[]{3,42,57,1,32,24};

int leng=numb.length;

System.out.println(“排序前的數組各個值:”);

for(int i=0;ileng;i++)

{

System.out.print(numb[i]+”\t”);

}

System.out.println(“\n”);

swap(numb);

System.out.println(“數組排序後:”); for(int i=0;ileng;i++)

{

System.out.print(numb[i]+”\t”);

} }

private static int[] swap(int[] numb) { int n2[]=numb; int len=n2.length; int i,j; int temp; for(i=1;i=len;i++)

{

for(j=len-1;j=1;j–)

{

if(n2[j]n2[j-1])

{

temp=n2[j];

n2[j]=n2[j-1];

n2[j-1]=temp;

}

}

} return n2; } }

方法三: package basic.javastu; public class NumberTest3 {

/** * 實現冒泡程序2 */ public static void main(String[] args) { // TODO Auto-generated method stub

int[] numb=new int[]{3,42,57,1,32,24};

int leng=numb.length;

System.out.println(“排序前的數組各個值:”);

for(int i=0;ileng;i++)

{

System.out.print(numb[i]+”\t”);

}

System.out.println(“\n”);

swap(numb);

System.out.println(“數組排序後:”); for(int i=0;ileng;i++)

{

System.out.print(numb[i]+”\t”);

} }

private static void swap(int[] numb) { int len=numb.length; int i,j; int temp; for(i=1;i=len;i++)

{

for(j=len-1;j=1;j–)

{

if(numb[j]numb[j-1])

{

temp=numb[j];

numb[j]=numb[j-1];

numb[j-1]=temp;

}

}

} } }

求java冒泡排序法的原理?

冒泡排序(Bubble Sort),是一種計算機科學領域的較簡單的排序算法。

它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。

這個算法的名字由來是因為越大的元素會經由交換慢慢「浮」到數列的頂端,故名。

冒泡排序算法的原理如下:(從後往前)

比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。

對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。

針對所有的元素重複以上的步驟,除了最後一個。

持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。

其更多信息可訪問百度百科查看:

原創文章,作者:GYUD,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/147885.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
GYUD的頭像GYUD
上一篇 2024-11-02 13:13
下一篇 2024-11-02 13:13

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • 蝴蝶優化算法Python版

    蝴蝶優化算法是一種基於仿生學的優化算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化算法Python版…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Python實現爬樓梯算法

    本文介紹使用Python實現爬樓梯算法,該算法用於計算一個人爬n級樓梯有多少種不同的方法。 有一樓梯,小明可以一次走一步、兩步或三步。請問小明爬上第 n 級樓梯有多少種不同的爬樓梯…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發佈。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29

發表回復

登錄後才能評論