java實現(xiàn)希爾排序算法
希爾排序算法的基本思想是:先取一個小于n的整數(shù)d1作為第一個增量,把文件的全部記錄分成d1個組。所有距離為dl的倍數(shù)的記錄放在同一個組中。先在各組內(nèi)進行直接插人排序;然后,取第二個增量d2<d1重復(fù)上述的分組和排序,直至所取的增量dt=1(dt<dt-l<…<d2<d1),即所有記錄放在同一組中進行直接插入排序為止。該方法實質(zhì)上是一種分組插入方法。
//帶增量的插入排序 public static void shellSort(int[] array) { int len = array.length; int h = 1; while (h < len) h = h * 3 + 1; while (h >= 1) { for (int i = 1; i < len; i++) { for (int j = i; j >= h; j = j - h) { if (array[j] < array[j - h]) { Sort.swap(array, j, j - h);//交換j和j-h } else break; } } h = h / 3; } }
希爾排序示意圖
以上所述就是本文的全部內(nèi)容了,希望能夠?qū)Υ蠹沂炀氄莆誮ava希爾排序有所幫助。
相關(guān)文章
利用spring?boot+WebSocket實現(xiàn)后臺主動消息推送功能
目前對于服務(wù)端向客戶端推送數(shù)據(jù),常用技術(shù)方案有輪詢、websocket等,下面這篇文章主要給大家介紹了關(guān)于利用spring?boot+WebSocket實現(xiàn)后臺主動消息推送功能的相關(guān)資料,需要的朋友可以參考下2022-04-04使用Feign調(diào)用時添加驗證信息token到請求頭方式
這篇文章主要介紹了使用Feign調(diào)用時添加驗證信息token到請求頭方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03java實現(xiàn)pdf文件截圖的方法【附PDFRenderer.jar下載】
這篇文章主要介紹了java實現(xiàn)pdf文件截圖的方法,結(jié)合實例形式分析了java基于PDFRenderer.jar進行pdf文件截圖的相關(guān)操作技巧,并附帶PDFRenderer.jar文件供讀者下載使用,需要的朋友可以參考下2018-01-01