ios演算法之氣泡排序演算法

2021-10-19 05:23:38 字數 820 閱讀 2709

通過不斷的走訪需要排序的元素,依次比較兩個相鄰的元素。如果順序(如從大到小、首字母從z到a)錯誤就把他們交換過來。這樣重複的進行直到沒有相鄰元素需要交換,就算元素排序完成。名字由來是因為越小的元素會經由交換慢慢「浮」到數列的頂端(公升序或降序排列),就如同碳酸飲料中二氧化碳的氣泡最終會上浮到頂端一樣,故名氣泡排序

oc demo位址

#pragma mark - 氣泡排序

- (void)bubblesortmethod

[self showbubblesortresult:array];}}

nslog(@"迴圈次數:%d",icount);

nslog(@"共%d次比較",jcount);

}//列印陣列

- (void)showbubblesortresult:(nsmutablearray * )array

nslog(@"%@",str);

nslog(@"<**********===>");

}

/// mark - 冒泡演算法

func bubblesortmethod(_ nums: inout [int]) }}

print("外層次數:\(icount)","交換次數:\(jcount)")}

var nums = [10,1,2,9,7,19,5,3,8,13,17]

bubblesortmethod(&nums)

swift demo位址

iOS常用演算法之氣泡排序

冒泡演算法是一種基礎的排序演算法,這種演算法會重複的比較陣列中相鄰的兩個元素,如果乙個元素比另乙個元素大 小,那麼就交換這兩個元素的位置。重複一直比較到最後乙個元素.1.基本的氣泡排序演算法 void bubblesorting nslog 排序後的陣列 array nslog 迴圈次數 d cou...

演算法 排序演算法之氣泡排序

排序演算法系列目錄說明 排序演算法簡介說明 1.定義 將一組雜亂無章的資料按一定的規律順次排列起來。例如 輸入 a1,a2,a3,an 輸出 a1 a2 a3 an 滿足a1 a2 a3 an 排列 2.演算法效能評估術語言 穩定 如果a原本在b前面,而a b時,排序之後a仍然在b的前面。不穩定 如...

演算法 排序演算法之氣泡排序

氣泡排序 bubble sort 也是一種簡單直觀的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢 浮 到數列的頂端。作為最簡單...