一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Swift - Swift代碼實現冒泡排序算法的簡單實例

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

2020-12-26 17:04Coder2015 Swift

冒牌排序可謂最基本的排序算法之一,穩定而沒有優化空間:D 下面就一起來看一下Swift代碼實現冒泡排序算法的簡單實例:

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

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import Cocoa
 
var 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循環方式,請各位指教、以及拍磚!

延伸 · 閱讀

精彩推薦
  • SwiftSwift中轉義閉包示例詳解

    Swift中轉義閉包示例詳解

    在Swift 中的閉包類似于結構塊,并可以在任何地方調用,下面這篇文章主要給大家介紹了關于Swift中轉義閉包的相關資料,需要的朋友可以參考下...

    小小小_小朋友11412021-12-26
  • SwiftSwift使用CollectionView實現廣告欄滑動效果

    Swift使用CollectionView實現廣告欄滑動效果

    這篇文章主要為大家詳細介紹了Swift使用CollectionView實現廣告欄滑動效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    Stevin的技術博客12372021-01-13
  • SwiftSwift能代替Objective-C嗎?

    Swift能代替Objective-C嗎?

    這是我在網上上看到的答案,復制粘貼過來和大家分享一下,因為我和很多人一樣很關心Swift的出現對Mac開發的影響和對Objective-C的影響。...

    Swift教程網4412020-12-16
  • Swiftmac git xcrun error active developer path 錯誤

    mac git xcrun error active developer path 錯誤

    本文主要是講訴了如何解決在mac下使用git;xcode4.6的環境時,出現了錯誤(mac git xcrun error active developer path)的解決辦法,希望對大家有所幫助...

    Swift教程網2232020-12-16
  • SwiftSwift教程之基礎數據類型詳解

    Swift教程之基礎數據類型詳解

    這篇文章主要介紹了Swift教程之基礎數據類型詳解,本文詳細講解了Swift中的基本數據類型和基本語法,例如常量和變量、注釋、分號、整數、數值類型轉換等...

    Swift教程網5162020-12-18
  • Swiftswift where與匹配模式的實例詳解

    swift where與匹配模式的實例詳解

    這篇文章主要介紹了swift where與匹配模式的實例詳解的相關資料,這里附有簡單的示例代碼,講的比較清楚,需要的朋友可以參考下...

    追到夢的魔術師14382021-01-06
  • SwiftSwift實現多個TableView側滑與切換效果

    Swift實現多個TableView側滑與切換效果

    這篇文章主要為大家詳細介紹了Swift實現多個TableView側滑與切換效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    乞力馬扎羅的雪雪5822021-01-08
  • SwiftSwift的74個常用內置函數介紹

    Swift的74個常用內置函數介紹

    這篇文章主要介紹了Swift的74個常用內置函數介紹,這篇文章列舉出了所有的Swift庫函數,內置函數是指無需引入任何模塊即可以直接使用的函數,需要的朋友可...

    Swift教程網5802020-12-19
主站蜘蛛池模板: 亚洲国产在线观看免费视频 | 色人阁图片 | 日韩欧美一区二区三区免费观看 | 欧美又大又粗又长又硬 | 久久无码AV亚洲精品色午夜麻豆 | 猫扑俩性 | 2022国产麻豆剧果冻传媒入口 | 国产精品污双胞胎在线观看 | 国产传媒在线播放 | 日韩理论片 | 欧美日韩国产在线人成 | 亚洲精品tv久久久久久久久久 | 亚洲国产精品自在在线观看 | 四虎影视紧急入口地址大全 | 美女露全身永久免费网站 | 性色香蕉AV久久久天天网 | 国产91一区二区在线播放不卡 | 手机av | 加勒比福利 | 果冻传媒林予曦图片 | 国产99久久九九精品免费 | 国产一区精品 | 色戒完整版 | 999久久免费高清热精品 | 亚州笫一色惰网站 | 日本网络视频www色高清免费 | 精品图区 | 调教全程肉动画片在线观看 | 激情文学综合网 | 亚洲精品视频专区 | 国内精品一区二区在线观看 | 天堂精品高清1区2区3区 | 精品国产成人a区在线观看 精品国产91久久久久久久 | 国产一区二区三区高清视频 | 情侣奴伺候女王第2部分小说 | 成人影院在线观看免费 | 久久全国免费观看视频 | 国产成人精品999在线 | 俺去俺来也在线www色官网 | 亚洲男人天堂 | 国产免费大片 |