奇酷教育-Python培训|UI培训|WEB大前端培训|Unity3D培训|HTML5培训|人工智能培训|JAVA开发的教育品牌

您現(xiàn)在所在的位置:首頁 >學習資源 > Unity游戲/VR/AR入門教材 > VR開發(fā)入門教程43:簡單算法之希爾排序

VR開發(fā)入門教程43:簡單算法之希爾排序

來源:奇酷教育 發(fā)表于:

VR開發(fā) VR視頻 VR培訓

  希爾排序

  希爾排序Shell Sort是基于插入排序的一種改進,同樣分成兩部分,也稱縮小增量排序

  步驟分析:

  1、準備待排數(shù)組[6 2 4 1 5 9]

  2、首先需要選取關鍵字,例如關鍵是3和1(第一步分成三組,第二步分成一組),那么待排數(shù)組分成了以下三個虛擬組:[6 1]一組、[2 5]二組、[4 9]三組。注意不是臨近的兩個數(shù)字分組,而是下標為3(分成了三組)的倍數(shù)的數(shù)字的分成了一組,就是每隔3個數(shù)取一個,每隔三個再取一個,這樣取出來的數(shù)字放到一組,

  3、把它們當成一組,但不實際分組,只是當成一組來看,所以上邊的"組"實際上并不存在,只是為了說明分組關系

  4、對以上三組分別進行插入排序變成下邊這樣

  [1 6] [2 5] [4 9]

  具體過程:

  [6 1]6和1交換變成[1 6]

  [2 5]2與5不動還是[2 5]

  [4 9]4與9不動還是[4 9]

  第一趟排序狀態(tài)演示:

  待排數(shù)組:[6 2 4 1 5 9]

  排后數(shù)組:[1 2 4 6 5 9]

  第二趟關鍵字取的是1,即每隔一個取一個組成新數(shù)組,實際上就是只有一組啦,隔一取一就全部取出來了

  此時待排數(shù)組為:[1 2 4 6 5 9]

  直接對它進行插入排序

  還記得插入排序怎么排不?復習一下

  [1 2 4]都不用動,過程省略,到5的時候,將5取出,在前邊的有序數(shù)組里找到適合它的位置插入,就是4后邊,6前邊

  后邊的也不用改,所以排序完畢

  順序輸出結果:[1 2 4 5 6 9]

  如何選取關鍵字

  希爾排序的關鍵是如何取關鍵字,因為其它內容與插入排序一樣

  那么如何選取關鍵字呢?就是分成三組,一組,這個分組的依據(jù)是什么呢?為什么不是二組,六組或者其它組?

  好的增量序列的共同特征:

  ① 最后一個增量必須為1

  ② 應該盡量避免序列中的值(尤其是相鄰的值)互為倍數(shù)的情況

  就是說,這個關鍵的選擇是沒有規(guī)定的,怎么選都可以,僅一條,關鍵字要越來越小,直到1為止

  增量的取值規(guī)則:為第一次取總長度的一半,第二次取一半的一半,依次類推直到1為止

  總的說來希爾對插入排序進行了改造

  原理:為了在插入排序前達到整個序列基本有序的狀態(tài) 提高插入排序的效率

  static void ShellSort(int[] unsorted, int len)

  {

  int group, i, j, temp;

  for (group = len / 2; group > 0; group /= 2)

  {

  for (i = group; i < len; i++)

  {

  for (j = i - group; j >= 0; j -= group)

  {

  if (unsorted[j] > unsorted[j + group])

  {

  temp = unsorted[j];

  unsorted[j] = unsorted[j + group];

  unsorted[j + group] = temp;

  }

  }

  }

  }

  }

主站蜘蛛池模板: 小型玉石雕刻机_家用玉雕机_小型万能雕刻机_凡刻雕刻机官网 | 专业的压球机生产线及解决方案厂家-河南腾达机械厂 | 扒渣机,铁水扒渣机,钢水扒渣机,铁水捞渣机,钢水捞渣机-烟台盛利达工程技术有限公司 | 提升海外网站流量,增加国外网站访客UV,定制海外IP-访客王 | 恒温恒湿试验箱_高低温试验箱_恒温恒湿箱-东莞市高天试验设备有限公司 | 辐射仪|辐射检测仪|辐射巡测仪|个人剂量报警仪|表面污染检测仪|辐射报警仪|辐射防护网 | 卧涛科技有限公司科技项目申报公司|高新技术企业申报|专利申请 | 低气压试验箱_高低温低气压试验箱_低气压实验箱 |林频试验设备品牌 | 二手电脑回收_二手打印机回收_二手复印机回_硒鼓墨盒回收-广州益美二手电脑回收公司 | 全自动端子机|刺破式端子压接机|全自动双头沾锡机|全自动插胶壳端子机-东莞市傅氏兄弟机械设备有限公司 | 伺服电机维修、驱动器维修「安川|三菱|松下」伺服维修公司-深圳华创益 | 蓝莓施肥机,智能施肥机,自动施肥机,水肥一体化项目,水肥一体机厂家,小型施肥机,圣大节水,滴灌施工方案,山东圣大节水科技有限公司官网17864474793 | 宿舍管理系统_智慧园区系统_房屋/房产管理系统_公寓管理系统 | 防火门|抗爆门|超大门|医疗门|隔声门-上海加汇门业生产厂家 | 板材品牌-中国胶合板行业十大品牌-环保板材-上海声达板材 | 根系分析仪,大米外观品质检测仪,考种仪,藻类鉴定计数仪,叶面积仪,菌落计数仪,抑菌圈测量仪,抗生素效价测定仪,植物表型仪,冠层分析仪-杭州万深检测仪器网 | 成都离婚律师|成都结婚律师|成都离婚财产分割律师|成都律师-成都离婚律师网 | 红立方品牌应急包/急救包加盟,小成本好项目代理_应急/消防/户外用品加盟_应急好项目加盟_新奇特项目招商 - 中红方宁(北京) 供应链有限公司 | NMRV减速机|铝合金减速机|蜗轮蜗杆减速机|NMRV减速机厂家-东莞市台机减速机有限公司 | 退火炉,燃气退火炉,燃气热处理炉生产厂家-丹阳市丰泰工业炉有限公司 | 自动气象站_气象站监测设备_全自动气象站设备_雨量监测站-山东风途物联网 | 山东风淋室_201/304不锈钢风淋室净化设备厂家-盛之源风淋室厂家 翻斗式矿车|固定式矿车|曲轨侧卸式矿车|梭式矿车|矿车配件-山东卓力矿车生产厂家 | 深圳诚暄fpc首页-柔性线路板,fpc柔性线路板打样生产厂家 | 超声波_清洗机_超声波清洗机专业生产厂家-深圳市好顺超声设备有限公司 | 软文推广发布平台_新闻稿件自助发布_媒体邀约-澜媒宝 | 阴离子聚丙烯酰胺价格_PAM_高分子聚丙烯酰胺厂家-河南泰航净水材料有限公司 | 北京租车公司_汽车/客车/班车/大巴车租赁_商务会议/展会用车/旅游大巴出租_北京桐顺创业租车公司 | 强效碱性清洗剂-实验室中性清洗剂-食品级高纯氮气发生器-上海润榕科学器材有限公司 | 英超直播_英超免费在线高清直播_英超视频在线观看无插件-24直播网 | 煤棒机_增碳剂颗粒机_活性炭颗粒机_木炭粉成型机-巩义市老城振华机械厂 | 快速卷帘门_硬质快速卷帘门-西朗门业 | 铁盒_铁罐_马口铁盒_马口铁罐_铁盒生产厂家-广州博新制罐 | 宽带办理,电信宽带,移动宽带,联通宽带,电信宽带办理,移动宽带办理,联通宽带办理 | 废气处理设备-工业除尘器-RTO-RCO-蓄热式焚烧炉厂家-江苏天达环保设备有限公司 | 东莞市超赞电子科技有限公司 全系列直插/贴片铝电解电容,电解电容,电容器 | 提升海外网站流量,增加国外网站访客UV,定制海外IP-访客王 | 云南外加剂,云南速凝剂,云南外加剂代加工-普洱澜湄新材料科技有限公司 | 招商帮-一站式网络营销服务|互联网整合营销|网络推广代运营|信息流推广|招商帮企业招商好帮手|搜索营销推广|短视视频营销推广 | 液氮罐(生物液氮罐)百科-无锡爱思科 | 山东商品混凝土搅拌楼-环保型搅拌站-拌合站-分体仓-搅拌机厂家-天宇 | 亚克隆,RNAi干扰检测,miRNA定量检测-上海基屹生物科技有限公司 |