7-11 字符串的冒泡排序(20 分)
我們已經知道了將N個整數按從小到大排序的冒泡排序法。本題要求將此方法用於字符串序列,並對任意給定的K(<N),輸出掃描完第K遍後的中間結果序列。
輸入格式:
輸入在第1行中給出N和K(1≤K<N≤100),此後N行,每行包含一個長度不超過10的、僅由小寫英文字母組成的非空字符串。
輸出格式:
輸出冒泡排序法掃描完第K遍後的中間結果序列,每行包含一個字符串。
輸入樣例:
6 2
best
cat
east
a
free
day
輸出樣例:
best
a
cat
day
east
free
#include<bits/stdc++.h>
using namespace std;
int main()//c++可以直接比較
{
int N,i,j,K;
cin>>N>>K;
string a[N];//char a[N]可以這樣
for(i=0;i<N;i++)
cin>>a[i];
for(i=0;i<K;i++)
{
for(j=0;j<N-1;j++)
{
if(a[j]>a[j+1])
{
swap(a[j],a[j+1]);
}
}
}
for(i=0;i<N;i++)
{
cout<<a[i]<<endl;
}
return 0;
}