国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

排序算法 之 希爾排序

2019-11-10 21:01:14
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

原文地址http://www.cnblogs.com/liukemng/p/3723976.html

希爾排序是由D.L.Shell于1959年提出的,所以稱為希爾排序。希爾排序又稱縮小增量排序,是插入排序的一種改進(jìn)。

基本思想:希爾排序是基于插入排序的以下特點(diǎn):待排序的序列元素?cái)?shù)量越少排序速度越快;待排序序列的元素基本有序時(shí)排序速度越快;基于以上思想將待排序序列分為多個(gè)子序列分別進(jìn)行插入排序,然后減少子序列的個(gè)數(shù)重新進(jìn)行插入排序,重復(fù)以上過(guò)程,直至待排序的序列只有一個(gè)再進(jìn)行一次插入排序,則排序完成序列有序。

代碼實(shí)現(xiàn):

復(fù)制代碼
/// <summary>/// 希爾排序/// </summary>/// <param name="intArray"></param>/// <param name="length"></param>public static void ShellSort(int[] intArray, int length){    int gap, i, j, temp;    for (gap = length / 2; gap >= 1; gap = gap / 3+1)    {        for(i=gap;i<length;i++)        {            temp=intArray[i];            for(j=i-gap;j>=0&&intArray[j]>temp;j-=gap)                intArray[j+gap]=intArray[j];            intArray[j+gap]=temp;        }        if(gap==1)            break;    }}復(fù)制代碼

需說(shuō)明的是不同的間隔gap選擇會(huì)對(duì)排序的效率有不同的影響,且不容易確定最佳的間隔gap,感興趣的朋友可以搜索相關(guān)資料作為參考。

以上就是希爾排序的內(nèi)容。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 布拖县| 鄂伦春自治旗| 行唐县| 宣恩县| 泰和县| 清新县| 宣汉县| 津市市| 榆林市| 乌苏市| 来安县| 昌黎县| 原阳县| 三都| 柘荣县| 工布江达县| 阳新县| 澳门| 清原| 清流县| 伊川县| 牟定县| 丁青县| 昭觉县| 石台县| 吴旗县| 阿鲁科尔沁旗| 阿拉善右旗| 泰和县| 安宁市| 图们市| 吉林省| 灵山县| 门头沟区| 东安县| 小金县| 遵化市| 德阳市| 万盛区| 大冶市| 东乌|