#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cctype>
#include <cstdlib>
#include <cmath>
#include <stack>
#define M 10000
using namespace std;
int cmp(const void *_a,const void *_b)
{
char a[100];
char b[100];
strcpy(a,(char *)_a);
strcat(a,(char *)_b);
strcpy(b,(char *)_b);
strcat(b,(char *)_a);
return -strcmp(a,b);
}
int main()
{
// freopen("in.in","r",stdin);
char str[60][30];
int n;
while(scanf("%d",&n) == 1 && n)
{
for(int i = 0;i < n;i++)
scanf("%s",str[i]);
qsort(str,n,sizeof(str[0]),cmp);
for(int i = 0;i < n;i++)
printf("%s",str[i]);
printf("\n");
}
return 0;
}
#include <cstring>
#include <algorithm>
#include <cctype>
#include <cstdlib>
#include <cmath>
#include <stack>
#define M 10000
using namespace std;
int cmp(const void *_a,const void *_b)
{
char a[100];
char b[100];
strcpy(a,(char *)_a);
strcat(a,(char *)_b);
strcpy(b,(char *)_b);
strcat(b,(char *)_a);
return -strcmp(a,b);
}
int main()
{
// freopen("in.in","r",stdin);
char str[60][30];
int n;
while(scanf("%d",&n) == 1 && n)
{
for(int i = 0;i < n;i++)
scanf("%s",str[i]);
qsort(str,n,sizeof(str[0]),cmp);
for(int i = 0;i < n;i++)
printf("%s",str[i]);
printf("\n");
}
return 0;
}
本文深入探讨了排序算法的实现和比较,包括冒泡排序、快速排序、归并排序等经典算法,以及它们的时间复杂度、空间复杂度和应用场景。
249

被折叠的 条评论
为什么被折叠?



