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

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

VR開發(fā)入門教程44:簡單算法之快速排序

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

快速排序是高級排序里最流行的一種,大多數(shù)情況下都是最快的

  遞歸算法

  遞歸算法的思想

  遞歸算法是把問題轉(zhuǎn)化為規(guī)模縮小了的同類問題的子問題。然后遞歸調(diào)用函數(shù)(或過程)來表示問題的解。在C語言中的運(yùn)行堆棧為他的存在提供了很好的支持,過程一般是通過函數(shù)或子過程來實(shí)現(xiàn)。

  遞歸算法:在函數(shù)或子過程的內(nèi)部,直接或者間接地調(diào)用自己的算法。

  遞歸算法的特點(diǎn):

  遞歸算法是一種直接或者間接地調(diào)用自身算法的過程。在計(jì)算機(jī)編寫程序中,遞歸算法對解決一大類問題是十分有效的,它往往使算法的描述簡潔而且易于理解。

  遞歸算法解決問題的特點(diǎn):

  (1) 遞歸就是在過程或函數(shù)里調(diào)用自身。

  (2) 在使用遞歸策略時(shí),必須有一個(gè)明確的遞歸結(jié)束條件,稱為遞歸出口。

  (3) 遞歸算法解題通常顯得很簡潔,但遞歸算法解題的運(yùn)行效率較低。所以一般不提倡用遞歸算法設(shè)計(jì)程序。

  (4) 在遞歸調(diào)用的過程當(dāng)中系統(tǒng)為每一層的返回點(diǎn)、局部量等開辟了棧來存儲(chǔ)。遞歸次數(shù)過多容易造成棧溢出等。所以一般不提倡用遞歸算法設(shè)計(jì)程序。

  遞歸算法的要求

  遞歸算法所體現(xiàn)的“重復(fù)”一般有三個(gè)要求:

  一是每次調(diào)用在規(guī)模上都有所縮小(通常是減半);

  二是相鄰兩次重復(fù)之間有緊密的聯(lián)系,前一次要為后一次做準(zhǔn)備(通常前一次的輸出就作為后一次的輸入);

  三是在問題的規(guī)模極小時(shí)必須用直接給出解答而不再進(jìn)行遞歸調(diào)用,因而每次遞歸調(diào)用都是有條件的(以規(guī)模未達(dá)到直接解答的大小為條件),無條件遞歸調(diào)用將會(huì)成為死循環(huán)而不能正常結(jié)束。

  簡單步驟:

  1.明確確定方法的功能含義

  2.明確方法出口

  3.在使用中遇到符合方法功能定義的地方調(diào)用方法

  快速排序

  快速排序是高級排序里最流行的一種,大多數(shù)情況下都是最快的

  算法描述:

  1.把序列劃分為兩個(gè)部分:左邊較小的部分和右邊較大的部分

  2.調(diào)用自己為左邊排序 3.調(diào)用自己為右邊排序

  要注意算法描述和遞歸的應(yīng)用

  public static void QuickSort(int[] arr,int start,int end)

  {

  if (start < end)

  {

  bool turn = true;

  int s = start;

  int e = end;

  while (s < e)

  {

  if (arr[s] > arr[e])

  {

  int temp = arr[s];

  arr[s] = arr[e];

  arr[e] = temp;

  turn = !turn;

  }

  if (turn == true)

  {

  e--;

  }

  else

  {

  s++;

  }

  }

  // 為左邊部分進(jìn)行再次劃分

  QuickSort(arr,start,e-1);

  // 為右邊部分再次劃分

  QuickSort(arr,s+1,end);

  }

  }

主站蜘蛛池模板: 成都珞石机械 - 模温机、油温机、油加热器生产厂家 | 压装机-卧式轴承轮轴数控伺服压装机厂家[铭泽机械] | 智能垃圾箱|垃圾房|垃圾分类亭|垃圾分类箱专业生产厂家定做-宿迁市传宇环保设备有限公司 | 德国EA可编程直流电源_电子负载,中国台湾固纬直流电源_交流电源-苏州展文电子科技有限公司 | 陕西高职单招-陕西高职分类考试网| 通风天窗,通风气楼,屋顶通风天窗,屋顶通风天窗公司 | 卫浴散热器,卫浴暖气片,卫生间背篓暖气片,华圣格浴室暖气片 | 热熔胶网膜|pes热熔网膜价格|eva热熔胶膜|热熔胶膜|tpu热熔胶膜厂家-苏州惠洋胶粘制品有限公司 | 食品机械专用传感器-落料放大器-低价接近开关-菲德自控技术(天津)有限公司 | 「银杏树」银杏树行情价格_银杏树种植_山东程锦园林 | 高压贴片电容|贴片安规电容|三端滤波器|风华电容代理南京南山 | 热处理炉-退火炉-回火炉设备厂家-丹阳市电炉厂有限公司 | 根系分析仪,大米外观品质检测仪,考种仪,藻类鉴定计数仪,叶面积仪,菌落计数仪,抑菌圈测量仪,抗生素效价测定仪,植物表型仪,冠层分析仪-杭州万深检测仪器网 | 亳州网络公司 - 亳州网站制作 - 亳州网站建设 - 亳州易天科技 | 螺旋丝杆升降机-SWL蜗轮-滚珠丝杆升降机厂家-山东明泰传动机械有限公司 | 硬度计_影像测量仪_维氏硬度计_佛山市精测计量仪器设备有限公司厂家 | 天津次氯酸钠酸钙溶液-天津氢氧化钠厂家-天津市辅仁化工有限公司 | 安规_综合测试仪,电器安全性能综合测试仪,低压母线槽安规综合测试仪-青岛合众电子有限公司 | 高压无油空压机_无油水润滑空压机_水润滑无油螺杆空压机_无油空压机厂家-科普柯超滤(广东)节能科技有限公司 | 鲁尔圆锥接头多功能测试仪-留置针测试仪-上海威夏环保科技有限公司 | 卫生型双针压力表-高温防腐差压表-安徽康泰电气有限公司 | 高速龙门架厂家_监控杆_多功能灯杆_信号灯杆_锂电池太阳能路灯-鑫世源照明 | 自动检重秤-动态称重机-重量分选秤-苏州金钻称重设备系统开发有限公司 | 广东西屋电气有限公司-广东西屋电气有限公司 | 炉门刀边腹板,焦化设备配件,焦化焦炉设备_沧州瑞创机械制造有限公司 | 宁夏档案密集柜,智能密集柜,电动手摇密集柜-盛隆柜业宁夏档案密集柜厂家 | 三效蒸发器_多效蒸发器价格_四效三效蒸发器厂家-青岛康景辉 | 泉州陶瓷pc砖_园林景观砖厂家_石英砖地铺石价格 _福建暴风石英砖 | 武汉创亿电气设备有限公司_电力检测设备生产厂家 | 哈希余氯测定仪,分光光度计,ph在线监测仪,浊度测定仪,试剂-上海京灿精密机械有限公司 | 北京办公室装修,办公室设计,写字楼装修-北京金视觉装饰工程公司 北京成考网-北京成人高考网 | 北京西风东韵品牌与包装设计公司,创造视觉销售力! | 硬度计_影像测量仪_维氏硬度计_佛山市精测计量仪器设备有限公司厂家 | 台湾Apex减速机_APEX行星减速机_台湾精锐减速机厂家代理【现货】-杭州摩森机电 | 内窥镜-工业内窥镜厂家【上海修远仪器仪表有限公司】 | 悬浮拼装地板_篮球场木地板翻新_运动木地板价格-上海越禾运动地板厂家 | 加中寰球移民官网-美国移民公司,移民机构,移民中介,移民咨询,投资移民 | 油漆辅料厂家_阴阳脚线_艺术漆厂家_内外墙涂料施工_乳胶漆专用防霉腻子粉_轻质粉刷石膏-魔法涂涂 | 警方提醒:赣州约炮论坛真的安全吗?2025年新手必看的网络交友防坑指南 | 上海单片机培训|重庆曙海培训分支机构—CortexM3+uC/OS培训班,北京linux培训,Windows驱动开发培训|上海IC版图设计,西安linux培训,北京汽车电子EMC培训,ARM培训,MTK培训,Android培训 | 螺杆真空泵_耐腐蚀螺杆真空泵_水环真空泵_真空机组_烟台真空泵-烟台斯凯威真空 |