UVA - 10815 Andy's First Dictionary
2014-09-24 15:31
134 查看
题目大意:给出几个句子,要求把单词分离出来并进行排序
解体思路:用字符串存储单词,然后再排序
体会:冒泡排序法有点过时了
解体思路:用字符串存储单词,然后再排序
体会:冒泡排序法有点过时了
#include<cstdio> #include<cstring> #include<algorithm> int cmp_string(const void *a, const void *b) { return strcmp((char *)a, (char *)b); } int main() { char str[210]; char word[150010][50]; memset(str,'\0',sizeof(str)); memset(word,'\0',sizeof(word)); int number = 0; while(gets(str)) { int len = strlen(str); for(int i = 0; i < len; i++) if(str[i] >= 'A' && str[i] <= 'Z') str[i] = str[i] + 32; for(int i = 0; i < len; i++) if(str[i] >= 'a' && str[i] <= 'z') { for(int j = 0; ;j++) { if(str[i] >= 'a' && str[i] <= 'z') { word[number][j] = str[i]; i++; } else break; } number++; } } /* for(int i = 0; i < number; i++) for(int j = i + 1; j < number; j++) if(strcmp(word[i],word[j]) > 0 ) { char t[100]; strcpy(t,word[i]); strcpy(word[i],word[j]); strcpy(word[j],t); } */ qsort(word,number,sizeof(word[0]),cmp_string); for(int i = 0; i < number; i++) { if(i == 0) printf("%s\n",word[i]); if( i != 0 && strcmp(word[i],word[i - 1]) != 0) printf("%s\n",word[i]) ; } return 0; }
相关文章推荐
- uva 10815 Andy's First Dictionary(字符串排序)
- UVA10815 Andy's First Dictionary
- uva -- 10815 Andy's First Dictionary
- UVa 10815 Andy's First Dictionary (分离字符串)
- uva 10815 Andy's First Dictionary
- uva-10815 - Andy's First Dictionary
- uva - 10815 - Andy's First Dictionary
- UVa 10815 - Andy's First Dictionary
- UVa 10815 - Andy's First Dictionary
- Uva 10815 Andy's First Dictionary (字典序)
- UVa 10815 Andy's First Dictionary
- UVA10815 Andy's First Dictionary
- uva 10815 Andy's First Dictionary
- UVa:10815 - Andy's First Dictionary
- uva10815 - Andy's First Dictionary
- UVA - 10815 Andy's First Dictionary
- UVa 10815 - Andy's First Dictionary
- Uva 10815-Andy's First Dictionary(串)
- UVa 10815 - Andy's First Dictionary解题报告
- UVA - 10815 Andy's First Dictionary