#include<iostream>
using namespace std;
const int maxn=105;
int n,a[maxn],b[maxn];
int main()
cin>>n;
int x;
for(inti=l;i<=n;i++){
cin>>x;
a[i]-b[i]-x;
for(int i=l;i<=n;i++)
for(int j=i+l;j<=n;j++){
if(a[i]>a[j])swap(a[i],a[j]);
if (b[i]<b[j])swap (b[i],b[j]);
for (int i=l;i<=n;i++)cout<<a[i]<<" ";
cout<<"\n";
for (int i=l;i<=n;i++)
cout<<b[i]<<"";
cout<<"\n";
return 0;
若输人的X[1],X[2],…,X[N]中有相同的数,程序会陷人死循环
当且仅当输人的X[1],X[2],…,X[N]全部相同时输出的两行结果相同。
该算法的原理是基数排序。()
若输人的X[1],X[2],…,X[N]互不相同,则下列说法正确的是
输出的两行结果相同
将输出的第一行结果整体翻转后,将与第二行相同
将输出的第一行结果的第一项与最后一项交换后,将与第二行相同
以上说法都不正确
下列说法不正确的是()
输出的第一行即为将 X[1],X[2],…,X[N]从小到大排序后得到的结果
输出的第二行即为将X[1],X[2],…,X[N]从大到小排序后得到的结果
若将“a[i]>a[j]"改为“a[i]>=a[j]”,则程序输出无变化
不存在时间复杂度更优的能与本程序达到相同目的的算法
该程序的时间复杂度为()。
0(n)
0(n log n)
O(2n)
.0.(n 5)
发表评论