冒泡排序c java c,冒泡排序,c语言冒泡排序法代码
冒泡排序,c語言冒泡排序法代碼
冒泡排序
冒泡排序(Bubble Sort),是一種計算機科學領域的較簡單的排序算法。
它重復地走訪過要排序的元素列,依次比較兩個相鄰的元素,如果順序(如從大到小、首字母從Z到A)錯誤就把他們交換過來。走訪元素的工作是重復地進行直到沒有相鄰元素需要交換,也就是說該元素列已經排序完成。
這個算法的名字由來是因為越小的元素會經由交換慢慢“浮”到數列的頂端(升序或降序排列),就如同碳酸飲料中二氧化碳的氣泡最終會上浮到頂端一樣,故名“冒泡排序”。
中文名
外文名
時間復雜度
實質
冒泡排序
Bubble Sort
O(n2)
把小(大)的元素往前(后)調
/**
* 冒泡排序
*/
// 定義數組
int[] array = new int[]{5, 3, 1, 6, 2, 19, 7, 88, 32};
// 定義并初始化一個int類型的臨時變量
int temporary = 0;
// 外層循環控制數組排序共需要循環多少次(每次相鄰的兩個元素進行比較,只需要比較數組總元素個數-1次)
for (int i = 0; i < array.length - 1; i++) {
// 內層循環控制第i次排序需比較多少次
//(例如:第一次排序后會確定數組中最大的一個數,且不再參與比較。第二次再確定一個除最大數以外較大的數。以此類推)
// 所以每次循環(數組的長度-i-1)次數即可。
// 不可以使用(數組的長度-j-1),會導致循環提前結束而不計算數組中剩余元素的比較
for (int j = 0; j < array.length - i - 1; j++) {
// 相鄰的兩個元素進行比較,將較大的元素賦值給臨時變量,從而實現換位操作
if (array[j] > array[j + 1]) {
temporary = array[j];
array[j] = array[j + 1];
array[j + 1] = temporary;
}
}
}
// 遍歷排序后數組中的元素
for (int k = 0; k < array.length; k++) {
System.out.println(array[k]);
}
}
}
控制臺輸出:
相關文章暫無相關文章
總結
以上是生活随笔為你收集整理的冒泡排序c java c,冒泡排序,c语言冒泡排序法代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: centos 新装mysql 进入,ce
- 下一篇: oracle表存储表空间,Oracle的