博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
1099.后缀子串排序
阅读量:5093 次
发布时间:2019-06-13

本文共 1288 字,大约阅读时间需要 4 分钟。

题目描述:

对于一个字符串,将其后缀子串进行排序,例如grain

其子串有:
grain 
rain 
ain 
in 
n

然后对各子串按字典顺序排序,即: 

ain,grain,in,n,rain

输入:

每个案例为一行字符串。

输出:

将子串排序输出

样例输入:
grain
样例输出:
aingraininnrain

 Solution1:(qsort)

#include
#include
#include
#include
using namespace std; /* sort只能对string排序而不能对字符数组排序 要用qsort */ int cmp(const void *a,const void *b) { //return strcmp((const char *)a,(const char *)b); return strcmp((char *)a ,(char *)b);} int main() { char a[1000][1000]; while(scanf("%s",a[0])!=EOF) { int len = strlen(a[0]); for(int i = 0;i < len-1;i++) { int k = 0; for(int j = i+1;j < len;j++) { a[i+1][k++] = a[0][j]; } a[i+1][k] = '\0'; //必须添加 } qsort(a,len,sizeof(a[0]),cmp); for(int i = 0;i < len;i++) printf("%s\n",a[i]); } }

 

Solution2:(set)

#include
#include
#include
#include
using namespace std;vector
v;int main(){ string str; while(cin>>str){ v.clear(); for(int i=0;i

 

转载于:https://www.cnblogs.com/bernieloveslife/p/9736498.html

你可能感兴趣的文章
排球积分程序(三)——模型类的设计
查看>>
HDU 4635 Strongly connected
查看>>
格式化输出数字和时间
查看>>
页面中公用的全选按钮,单选按钮组件的编写
查看>>
java笔记--用ThreadLocal管理线程,Callable<V>接口实现有返回值的线程
查看>>
(旧笔记搬家)struts.xml中单独页面跳转的配置
查看>>
不定期周末福利:数据结构与算法学习书单
查看>>
strlen函数
查看>>
关于TFS2010使用常见问题
查看>>
软件工程团队作业3
查看>>
火狐、谷歌、IE关于document.body.scrollTop和document.documentElement.scrollTop 以及值为0的问题...
查看>>
javascript之数组操作
查看>>
Python编译错误总结
查看>>
URL编码与解码
查看>>
Eclipse 安装SVN插件
查看>>
阿里云服务器CentOS6.9安装Mysql
查看>>
剑指offer系列6:数值的整数次方
查看>>
js 过滤敏感词
查看>>
poj2752 Seek the Name, Seek the Fame
查看>>
软件开发和软件测试,我该如何选择?(蜗牛学院)
查看>>