C++ 字符串去重排序实例代码
入一个字符串,去掉重复出现的字符,并把剩余的字符串排序输出。
实现代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
#include <iostream> #include <string> using namespace std; void sort(string s) { char tmp[100]; int len=s.size(); int count=0,i,j; for (i=0;i<len;i++) { for (j=i+1;j<len;j++) { if (s[i]==s[j]) { s[j]= '0' ; } } } for (i=0;i<len;i++) { if (s[i]>= 'a' && s[i]<= 'z' ) { tmp[count++]=s[i]; } } //冒泡排序 for (i=0;i<count;i++) { for (j=0;j<i;j++) { char temp; if ( strcmp (&tmp[j],&tmp[i])>0) { temp=tmp[j]; tmp[j]=tmp[i]; tmp[i]=temp; } } } for (i=0;i<count;i++) cout<<tmp[i]; cout<<endl; } void main() { string s; cin>>s; sort(s); } |
测试结果,可能想的不周全,欢迎查漏补缺:
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://blog.csdn.net/wtyvhreal/article/details/42409343