亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

搜索
首頁 > Java > java教程 > 正文

Java編寫插入排序算法并輸出結(jié)果

PHPz
發(fā)布: 2024-02-19 16:27:21
原創(chuàng)
1460人瀏覽過

java實現(xiàn)插入排序的示例代碼和運(yùn)行結(jié)果

Java實現(xiàn)插入排序的示例代碼和運(yùn)行結(jié)果

插入排序是一種簡單且常用的排序算法,在實際應(yīng)用中有著廣泛的應(yīng)用。本文將介紹如何使用Java語言實現(xiàn)插入排序,并給出相應(yīng)的代碼示例和運(yùn)行結(jié)果。

插入排序的基本思想是將待排序的數(shù)組分為已排序和未排序兩部分,初始時已排序部分只有一個元素,然后依次將未排序部分的元素插入到已排序部分的合適位置,直到全部元素都插入完成。

下面是Java實現(xiàn)插入排序的示例代碼:

立即學(xué)習(xí)Java免費(fèi)學(xué)習(xí)筆記(深入)”;

public class InsertionSort {
    public static void insertionSort(int[] arr) {
        int n = arr.length;
        for (int i = 1; i < n; i++) {
            int key = arr[i];
            int j = i - 1;
            while (j >= 0 && arr[j] > key) {
                arr[j + 1] = arr[j];
                j -= 1;
            }
            arr[j + 1] = key;
        }
    }

    public static void main(String[] args) {
        int[] arr = {5, 2, 10, 8, 3};
        System.out.println("排序前:");
        printArray(arr);
        insertionSort(arr);
        System.out.println("排序后:");
        printArray(arr);
    }

    public static void printArray(int[] arr) {
        int n = arr.length;
        for (int i = 0; i < n; i++) {
            System.out.print(arr[i] + " ");
        }
        System.out.println();
    }
}
登錄后復(fù)制

代碼中的insertionSort方法實現(xiàn)了插入排序算法。它使用一個外層循環(huán)遍歷未排序部分的每個元素,將元素插入到已排序部分的合適位置。內(nèi)層循環(huán)則是在已排序部分中尋找合適的插入位置,將比當(dāng)前元素大的元素往后移動。

簡篇AI排版
簡篇AI排版

AI排版工具,上傳圖文素材,秒出專業(yè)效果!

簡篇AI排版134
查看詳情 簡篇AI排版

main方法中,我們定義了一個整型數(shù)組arr,初始化了一組無序的元素。首先輸出了排序前的數(shù)組,然后調(diào)用insertionSort方法進(jìn)行排序,最后輸出排序后的數(shù)組。

運(yùn)行結(jié)果如下所示:

排序前:
5 2 10 8 3 
排序后:
2 3 5 8 10 
登錄后復(fù)制

可以看到,經(jīng)過插入排序算法處理后,原先無序的數(shù)組已經(jīng)成功地按照從小到大的順序進(jìn)行了排序。

插入排序的時間復(fù)雜度為O(n^2),在處理小規(guī)模的數(shù)據(jù)集時性能較好。然而,對于大規(guī)模數(shù)據(jù)集,插入排序的性能會顯著下降,不如其他高效的排序算法。因此,在實際開發(fā)中,需要根據(jù)具體情況選擇適合的排序算法。

以上就是Java編寫插入排序算法并輸出結(jié)果的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!

相關(guān)標(biāo)簽:
java速學(xué)教程(入門到精通)
java速學(xué)教程(入門到精通)

java怎么學(xué)習(xí)?java怎么入門?java在哪學(xué)?java怎么學(xué)才快?不用擔(dān)心,這里為大家提供了java速學(xué)教程(入門到精通),有需要的小伙伴保存下載就能學(xué)習(xí)啦!

下載
來源:php中文網(wǎng)
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn
最新問題
開源免費(fèi)商場系統(tǒng)廣告
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板
關(guān)于我們 免責(zé)申明 意見反饋 講師合作 廣告合作 最新更新
php中文網(wǎng):公益在線php培訓(xùn),幫助PHP學(xué)習(xí)者快速成長!
關(guān)注服務(wù)號 技術(shù)交流群
PHP中文網(wǎng)訂閱號
每天精選資源文章推送
PHP中文網(wǎng)APP
隨時隨地碎片化學(xué)習(xí)
PHP中文網(wǎng)抖音號
發(fā)現(xiàn)有趣的

Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號