激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java 中基本算法之希爾排序的實例詳解

java 中基本算法之希爾排序的實例詳解

2020-12-07 11:26songxinqiang Java教程

這篇文章主要介紹了java 中基本算法之希爾排序的實例詳解的相關資料,這里提供簡單實現的實例,幫助大家學習理解此部分知識,需要的朋友可以參考下

java 中基本算法希爾排序的實例詳解

希爾排序(Shell Sort)是插入排序的一種。也稱縮小增量排序,是直接插入排序算法的一種更高效的改進版本。希爾排序是非穩定排序算法。該方法因DL.Shell于1959年提出而得名。

希爾排序是把記錄按下標的一定增量分組,對每組使用直接插入排序算法排序;隨著增量逐漸減少,每組包含的關鍵詞越來越多,當增量減至1時,整個文件恰被分成一組,算法便終止。

基本思想:算法先將要排序的一組數按某個增量d(n/2,n為要排序數的個數)分成若干組,每組中記錄的下標相差d.對每組中全部元素進行直接插入排序, 然后再用一個較小的增量(d/2)對它進行分組,在每組中再進行直接插入排序。當增量減到1時,進行直接插入排序后,排序完成。

實例代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
public class ShellSort {
 
  /**
   * 原理:算法先將要排序的一組數按某個增量d(n/2,n為要排序數的個數)分成若干組,每組中記錄的
   * 下標相差d.對每組中全部元素進行直接插入排序,然后再用一個較小的增量(d/2)對它進行分組,
   * 在每組中再進行直接插入排序。當增量減到1時,進行直接插入排序后,排序完成。
   *
   * @author 阿信sxq-2015年7月16日
   *
   * @param args
   */
  public static void main(String[] args) {
    int a[] = { 49, 38, 65, 97, 76, 13, 27, 49, 78, 34, 12, 64, 5, 4, 62, 99, 98, 54,
         56, 17, 18, 23, 34, 15, 35, 25, 53, 51 };
    int d = a.length;
    int temp = 0;
 
    while (true) {
      d = d / 2;
      for (int x = 0; x < d; x++) {
        //對每一個組進行直接插入排序
        for (int i = x + d; i < a.length; i += d) {
          int j = i - d;
          temp = a[i];
          for (; j >= 0 && temp < a[j]; j -= d) {
            a[j + d] = a[j];
          }
          a[j + d] = temp;
        }
      }
 
      if (d == 1) {
        break;
      }
    }
 
    System.out.println(Arrays.toString(a));
 
  }
 
}

以上就是java 算法的希爾排序的講解,如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

原文鏈接:https://my.oschina.net/songxinqiang/blog/669906

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 91嫩草丨国产丨精品入口 | 国产高潮国产高潮久久久91 | 亚洲午夜影院在线观看 | 免费观看黄色一级视频 | 美女性感毛片 | 精品国产一区二区三区四 | av在线浏览 | 中国大陆高清aⅴ毛片 | 欧美一区二区三区久久精品视 | 911色_911色sss主站色播 | 91 在线观看 | 国产免费观看一区二区三区 | 国产在线1区 | 国产免费看 | 中国洗澡偷拍在线播放 | 精品黑人一区二区三区国语馆 | 亚洲电影在线观看高清免费 | 国产日韩免费观看 | 久久精品亚洲国产奇米99 | 亚洲人成在线播放网站 | 日本人乱人乱亲乱色视频观看 | 国产一区二区三区视频在线观看 | 久草视频免费 | 久久国产精品久久久久久久久久 | 久久精品探花 | 欧美精品在线视频观看 | 成人精品久久 | 插插操| 泰剧19禁啪啪无遮挡 | 久章草在线观看 | 性大片性大片免费 | 欧美 亚洲 视频 | 免费在线国产 | 亚洲一级电影在线观看 | 黄污污网站 | 一级免费 | 毛片在线播放视频 | 黄色一级视频 | 国产一区毛片 | 国产超碰人人爽人人做人人爱 | 久久在线精品视频 |