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

首頁 > 編程 > Swift > 正文

Swift代碼實現冒泡排序算法的簡單實例

2020-03-09 17:48:35
字體:
來源:轉載
供稿:網友

冒泡排序原理
1.對需要排序的數據,倆倆進行比較,小的放前面,大的放后面
2.依次對每一對相鄰的數據作步驟1的工作,當排序到最后一個元素的時候,我們能保證這個數據是最大。
3.針對所有的元素重復以上的步驟,除了最后一個(這里為什么需要針對除了最后一個元素的全部元素做一次呢,因為最后一個元素已經是最大的不需要排序了,同時,由于元素的交換,交換上來的元素的大小不一定比前面的元素的大,所以需要再做一次)。
4持續對越來越少的元素重復3的步驟,直到沒有任何一對元素需要比較。
時間復雜度
我們一般談最壞時間復制度
n(n-1)/2 = O(n²)

算法穩定性
相同元素的前后順序并沒有改變,所以是一種穩定排序算法

import Cocoavar array = [123,234,12,346,4,75,67,234,23,1233,3,5,986,98,567,345,234,234]println("排序前的值:")for item in array{  var ii = item  println(ii)}for var i = 0; i < array.count - 1; ++i {  for var j = 0; j < array.count - 1 - i; ++j{    if array[j] > array[j + 1] {      var temp = array[j + 1]      array[j + 1] = array[j]      array[j] = temp    }  }}println("排序后的值:")for item in array{  var ii = item  println(ii)}

運行結果:

Swift,冒泡排序,排序算法,排序

Swift,冒泡排序,排序算法,排序

Swift,冒泡排序,排序算法,排序

這里的for循環使用的是C里面傳統的for循環方式,請各位指教、以及拍磚!


注:相關教程知識閱讀請移步到swift教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 麻阳| 城步| 秭归县| 龙州县| 准格尔旗| 佛坪县| 无棣县| 金昌市| 光山县| 舞钢市| 徐闻县| 惠水县| 嘉黎县| 崇明县| 宜阳县| 阳西县| 长岭县| 高阳县| 怀集县| 三都| 桂林市| 拜泉县| 富蕴县| 田阳县| 娄烦县| 页游| 昌吉市| 莒南县| 石泉县| 瓮安县| 澄迈县| 宁阳县| 建平县| 东台市| 锡林郭勒盟| 宾阳县| 横山县| 尼勒克县| 聂拉木县| 金门县| 汉寿县|