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

您現在所在的位置:首頁 >學習資源 > Unity游戲/VR/AR入門教材 > VR開發入門教程42:簡單算法之簡單排序

VR開發入門教程42:簡單算法之簡單排序

來源:奇酷教育 發表于:

VR開發 VR教程 VR培訓

  算法

  程序=算法+數據結構+程序設計方法+語言工具和環境

  做任何事情都有一定的步驟。為解決一個問題而采取的方法和步驟,就稱為算法。

  冒泡排序

  冒泡排序運行起來非常慢,但在概念上排序算法中最簡單的,在剛開始研究排序時也是一種很好的排序算法

  算法描述:

  1.比較兩個數據項

  2.如果左邊的數據項大,交換兩個數據項

  3.向右移動位置重復1、2步

  編碼的關鍵點:

  1.需要冒泡的趟數

  2.如何控制兩兩比較

  3.如何優化不和已冒泡的最大值進行比較

  public static void BubbleSort(int[] arr)

  {

  // 冒泡的次數

  for (int i = 0; i < arr.Length-1; i++)

  {

  for (int j = 0; j < arr.Length-i-1; j++)

  {

  // j j+1

  if (arr[j] > arr[j+1])

  {

  int temp = arr[j];

  arr[j] = arr[j + 1];

  arr[j + 1] = temp;

  }

  }

  }

  }

  選擇排序

  選擇排序改進了冒泡排序,冒泡是比較完就交換,而選擇排序則是選出最小的才交換

  算法描述:

  1.掃描整個序列

  2.從中挑出最小的數據項

  3.將最小的數據項放置到合適的位置

  示例:6 5 4 7

  假設第一個最小,驗證是否最小,6 5,記憶最新的最小位置 5,重復以上2步到數組末尾,最小的位置被找到,0索引和2索引交換位置,如此循環選擇n-1次 程序結束。

  public static void SelectSort(int[] arr)

  {

  // 選擇的次數

  for (int i = 0; i < arr.Length-1; i++)

  {

  // 選出本次搜索最小的

  // 為i這個位置挑選數值

  int min = i;

  for (int j = i+1; j < arr.Length; j++)

  {

  if (arr[j] < arr[min])

  {

  min = j;

  }

  }

  // 交換min和i

  if (min != i)

  {

  int temp = arr[min];

  arr[min] = arr[i];

  arr[i] = temp;

  }

  }

  }

  插入排序

  插入排序是簡單排序里最好的一種,但是稍微麻煩一些

  算法描述:

  1.假設部分有序(一般設第一個數據項為第一部分)

  2.其他輸入依次插入之前的有序序列

  若序列基本有序 此排序算法最優

  要注意為待插入元素找到合適位置

  public static void InsertSort(int[] arr)

  {

  for (int i = 1; i < arr.Length; i++)

  {

  // 監視哨

  int temp = arr[i];

  // 為監視哨中保存的數據移動位置

  int insertIndex = i;

  while (insertIndex > 0 && arr[insertIndex-1]>temp)

  {

  arr[insertIndex] = arr[insertIndex - 1];

  insertIndex--;

  }

  arr[insertIndex] = temp;

  }

  }

主站蜘蛛池模板: 净化车间装修_合肥厂房无尘室设计_合肥工厂洁净工程装修公司-安徽盛世和居装饰 | CTAB,表面活性剂1631溴型(十六烷基三甲基溴化铵)-上海升纬化工原料有限公司 | 北京中创汇安科贸有限公司 | 国际船舶网 - 船厂、船舶、造船、船舶设备、航运及海洋工程等相关行业综合信息平台 | 一体化污水处理设备,一体化污水设备厂家-宜兴市福源水处理设备有限公司 | 杭州公司变更法人-代理记账收费价格-公司注销代办_杭州福道财务管理咨询有限公司 | 厂房出租_厂房出售_产业园区招商_工业地产&nbsp;-&nbsp;中工招商网 | 涡轮流量计_LWGY智能气体液体电池供电计量表-金湖凯铭仪表有限公司 | 骨密度仪-骨密度测定仪-超声骨密度仪-骨龄测定仪-天津开发区圣鸿医疗器械有限公司 | 安全阀_弹簧式安全阀_美标安全阀_工业冷冻安全阀厂家-中国·阿司米阀门有限公司 | 北京京云律师事务所| 橡胶膜片,夹布膜片,橡胶隔膜密封,泵阀设备密封膜片-衡水汉丰橡塑科技公司网站 | 气动隔膜泵厂家-温州永嘉定远泵阀有限公司 | 智能交通网_智能交通系统_ITS_交通监控_卫星导航_智能交通行业 | 网带通过式抛丸机,,网带式打砂机,吊钩式,抛丸机,中山抛丸机生产厂家,江门抛丸机,佛山吊钩式,东莞抛丸机,中山市泰达自动化设备有限公司 | 东莞螺杆空压机_永磁变频空压机_节能空压机_空压机工厂批发_深圳螺杆空压机_广州螺杆空压机_东莞空压机_空压机批发_东莞空压机工厂批发_东莞市文颖设备科技有限公司 | MES系统工业智能终端_生产管理看板/安灯/ESOP/静电监控_讯鹏科技 | 镀锌钢格栅_热镀锌格栅板_钢格栅板_热镀锌钢格板-安平县昊泽丝网制品有限公司 | 薄壁轴承-等截面薄壁轴承生产厂家-洛阳薄壁精密轴承有限公司 | EDLC超级法拉电容器_LIC锂离子超级电容_超级电容模组_软包单体电容电池_轴向薄膜电力电容器_深圳佳名兴电容有限公司_JMX专注中高端品牌电容生产厂家 | 玻纤土工格栅_钢塑格栅_PP焊接_单双向塑料土工格栅_复合防裂布厂家_山东大庚工程材料科技有限公司 | 大行程影像测量仪-探针型影像测量仪-增强型影像测量仪|首丰百科 大通天成企业资质代办_承装修试电力设施许可证_增值电信业务经营许可证_无人机运营合格证_广播电视节目制作许可证 | 分子精馏/精馏设备生产厂家-分子蒸馏工艺实验-新诺舜尧(天津)化工设备有限公司 | 合肥防火门窗/隔断_合肥防火卷帘门厂家_安徽耐火窗_良万消防设备有限公司 | 上海物流公司,上海货运公司,上海物流专线-优骐物流公司 | 恒温恒湿试验箱_高低温试验箱_恒温恒湿箱-东莞市高天试验设备有限公司 | LHH药品稳定性试验箱-BPS系列恒温恒湿箱-意大利超低温冰箱-上海一恒科学仪器有限公司 | 福建成考网-福建成人高考网| 锂电池生产厂家-电动自行车航模无人机锂电池定制-世豹新能源 | 并网柜,汇流箱,电控设备,中高低压开关柜,电气电力成套设备,PLC控制设备订制厂家,江苏昌伟业新能源科技有限公司 | 冷水机-工业冷水机-冷水机组-欧科隆品牌保障 | 高压互感器,电流互感器,电压互感器-上海鄂互电气科技有限公司 | VI设计-LOGO设计公司-品牌设计公司-包装设计公司-导视设计-杭州易象设计 | 垃圾压缩设备_垃圾处理设备_智能移动式垃圾压缩设备--山东明莱环保设备有限公司 | 深圳办公室装修,办公楼/写字楼装修设计,一级资质 - ADD写艺 | 成都软件开发_OA|ERP|CRM|管理系统定制开发_成都码邻蜀科技 | arch电源_SINPRO_开关电源_模块电源_医疗电源-东佑源 | 步进_伺服_行星减速机,微型直流电机,大功率直流电机-淄博冠意传动机械 | 圣才学习网-考研考证学习平台,提供万种考研考证电子书、题库、视频课程等考试资料 | 安全,主动,被动,柔性,山体滑坡,sns,钢丝绳,边坡,防护网,护栏网,围栏,栏杆,栅栏,厂家 - 护栏网防护网生产厂家 | 河南道路标志牌_交通路标牌_交通标志牌厂家-郑州路畅交通 |