選擇排序與氣泡排序

2021-07-03 15:32:12 字數 785 閱讀 5550

///

///選擇排序

/// ///

static

void sort1(int

arr)

}var temp =arr[i];

arr[i] =arr[min];

arr[min] =temp;}}

//////

氣泡排序

/// ///

static

void sort2(int

arr)}}

}static

void main(string

args)

;sort1(arr);

foreach (var i in

arr)

var arr2 = new

int ;

sort1(arr2);

foreach (var i in

arr2)

console.readkey();

}

以下為這兩種排序演算法的對比:

選擇排序與氣泡排序比較的次數是一樣的

選擇排序的交換次數要比氣泡排序的交換次數少

以下為這兩種演算法的關鍵點:

為了找出最小的元素而掃瞄一遍陣列,並不能為下一遍掃瞄提供任何資訊,

這樣就造成這種現象:乙個有序的陣列和乙個無需的陣列排序時間是一樣的

交換次數和陣列的大小是線性的

陣列越大,以為著交換次數也越大

排序 氣泡排序與選擇排序

最近複習大學學過的演算法,這裡做個筆記。排序,我們學過 這裡需要了解什麼是時間複雜度,什麼是空間複雜度。簡單而言,時間複雜度指執行的次數,空間複雜度指消耗的記憶體。它重複地走訪過要排序的元素列,依次比較兩個相鄰的元素,如果順序 如從大到小 首字母從z到a 錯誤就把他們交換過來。走訪元素的工作是重複地...

選擇排序與氣泡排序

今早心血來潮,又想看看氣泡排序.於是乎度娘一番,找到了度娘給我的這篇文章,前面的文字描述還是簡單易懂的,可惜給出的 示範有些文不對題.於是乎又wiki一番.發現上文給出的 形似選擇排序,於是總結如下 我們假設有乙個陣列 624159 對應的索引也就是 0 5,如果我想描述第二個位置,也就是數字2的位...

氣泡排序與選擇排序

氣泡排序 bubble sort 輸入 亂序n長陣列 輸出 排序好的n長陣列 時間複雜度 o n 2 空間複雜度 o 1 氣泡排序的原理是對陣列多次掃瞄,每次掃瞄都對相鄰的兩個元素的順序進行調整。假設我們按公升序排列陣列,那麼相鄰兩個元素中如果左邊的元素大於右邊的元素,就交換這兩個元素位置,否則不交...