国产探花免费观看_亚洲丰满少妇自慰呻吟_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教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 班玛县| 中山市| 宁晋县| 慈溪市| 古田县| 黄浦区| 望谟县| 阆中市| 阿拉善左旗| 长寿区| 唐山市| 石城县| 沙雅县| 和政县| 宜兰县| 金秀| 叶城县| 道孚县| 邻水| 无锡市| 锦屏县| 哈尔滨市| 南澳县| 红桥区| 巴东县| 蛟河市| 上高县| 丰城市| 芜湖县| 莒南县| 剑河县| 周口市| 夏邑县| 凤凰县| 双城市| 墨竹工卡县| 樟树市| 永修县| 梁河县| 泽库县| 卓资县|