7-7 冒泡法排序 (20分)
7-7 冒泡法排序 (20分)
將N個整數按從小到大排序的氣泡排序法是這樣工作的:從頭到尾比較相鄰兩個元素,如果前面的元素大於其緊隨的後面元素,則交換它們。通過一遍掃描,則最後一個元素必定是最大的元素。然後用同樣的方法對前N−1個元素進行第二遍掃描。依此類推,最後只需處理兩個元素,就完成了對N個數的排序。
本題要求對任意給定的K(<N),輸出掃描完第K遍後的中間結果數列。
輸入格式:
輸入在第1行中給出N和K(1≤K<N≤100),在第2行中給出N個待排序的整數,數字間以空格分隔。
輸出格式:
在一行中輸出氣泡排序法掃描完第K遍後的中間結果數列,數字間以空格分隔,但末尾不得有多餘空格。
輸入樣例:
6 2
2 3 5 1 6 4
輸出樣例:
2 1 3 4 5 6
#include <stdio.h>
int main(){
int n,k;
scanf("%d%d",&n,&k);
int arr[n];
for(int i=0;i<n;i++){
scanf("%d",&arr[i]);
}
for(int i=0;i<k;i++){//k為迴圈的次數
for(int j=0;j<n;j++){
if(arr[j]<arr[j-1]){
int temp=arr[j-1];
arr[j-1]=arr[j];
arr[j]=temp;
}
}
}
for(int i=0;i<n;i++){
printf("%d",arr[i]);
if(i!=n-1){
printf(" ");
}
}
return 0;
}
相關文章
- 選擇法和冒泡法排序介面排序
- 冒泡,選擇排序法(C#)排序C#
- 排序法:選擇、冒泡、插入和快排排序
- 指標對陣列排序選擇法和冒泡法指標陣列排序
- 冒泡和快速排序排序
- GO -冒泡 二分法查詢Go
- JavaScript 排序,不只是冒泡JavaScript排序
- 七、排序,選擇、冒泡、希爾、歸併、快速排序實現排序
- Mysql 分組排序的sql寫法MySql排序
- 微課|中學生可以這樣學Python(例8.22):冒泡法排序Python排序
- C語言排序 冒泡 選擇 快排C語言排序
- (建議收藏)2020最新排序演算法總結:冒泡、選擇、插入、希爾、快速、歸併、堆排序、基數排序排序演算法
- php演算法之冒泡法PHP演算法
- 單連結串列的排序(插入,選擇,冒泡)排序
- JavaScript氣泡排序+Vue視覺化冒泡動畫JavaScript排序Vue視覺化動畫
- 插入、冒泡、歸併、堆排序、快排總結排序
- python排序演算法的實現-冒泡Python排序演算法
- 排序演算法Python(冒泡、選擇、快速、插入、希爾、歸併排序)排序演算法Python
- js實現兩種實用的排序演算法——冒泡、快速排序JS排序演算法
- 基礎排序(冒泡、選擇、插入)學習筆記排序筆記
- 排序演算法之冒泡,選擇,插入和希爾排序演算法
- PHP排序演算法(插入,選擇,交換,冒泡,快速)PHP排序演算法
- 排序:交換排序——氣泡排序法排序
- 常見的排序演算法:冒泡、快排、歸併排序演算法
- js冒泡、快排的簡單寫法JS
- 反射,hashlib模組,正則匹配,冒泡,選擇,插入排序反射排序
- 陣列基本操作及冒泡演算法、直接選擇排序陣列演算法排序
- 快速排序法排序
- 交換排序法排序
- shell排序法排序
- 求眾數、排序演算法、二分法排序演算法
- 常見的三種排序演算法(選擇,冒泡,計數)排序演算法
- 資料結構和演算法:03.冒泡、選擇排序資料結構演算法排序
- (三)陣列的定義、折半查詢、排序(選擇和冒泡)陣列排序
- 阻止冒泡和阻止預設事件的相容寫法事件
- C語言:排列陣列的三種方法:冒泡法、選擇法、插入法C語言陣列
- (四)桶排序法排序
- 排序法(轉載)排序