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

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

Ruby實現(xiàn)的合并排序算法

2019-10-26 19:27:24
字體:
供稿:網(wǎng)友

算法課的作業(yè),利用分治法,合并排序。

#encoding: utf-8#author: xu jin, 4100213#date: Oct 27, 2012#MergeSort#to sort an array by using MergeSort algorithm#example output:#The original array is:[4, 32, 84, 58, 49, 40, 75, 29, 82, 21, 70, 37, 70]#The sorted array is: [4, 21, 29, 32, 37, 40, 49, 58, 70, 70, 75, 82, 84]MAX = 100arrayInt = Array.newfor index in (0..12) arrayInt[index] = rand(100) #produce 12 random numberendputs "The original array is:" + arrayInt.to_sdef merge(arr, left, middle, right) arrL ,arrR = Array.new, Array.new arrL[0..(middle - left)], arrR[0..(right - middle - 1)] = arr[left..middle], arr[middle + 1.. right] arrL[arrL.size] ,arrR[arrR.size]= MAX, MAX for k in (left..right)  arrL.first <= arrR.first ? (arr[k] = arrL.shift) : (arr[k] = arrR.shift) endenddef merge_sort(arr, left, right) if left < right then  middle = (left + right)/2  merge_sort(arr, left, middle)  merge_sort(arr, middle + 1, right)  merge(arr, left, middle, right) endendmerge_sort(arrayInt, 0, arrayInt.length-1)puts "The sorted array is: " + arrayInt.to_s

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 湘阴县| 宁明县| 瑞丽市| 景泰县| 连州市| 奇台县| 浏阳市| 崇礼县| 灵武市| 铅山县| 达尔| 伊川县| 灵台县| 株洲市| 和平区| 璧山县| 堆龙德庆县| 阿拉善盟| 邻水| 凤山县| 永福县| 五华县| 青州市| 马鞍山市| 顺昌县| 五原县| 洛川县| 北碚区| 临朐县| 恭城| 收藏| 韶关市| 松江区| 瑞丽市| 高阳县| 遂川县| 阳谷县| 黎川县| 平潭县| 泗洪县| 吴桥县|