您的位置:首页 > 其它

找出字符串中第一个只出现一次的字符

2016-03-30 20:52 330 查看
找出字符串中第一个只出现一次的字符

#include<iostream>
#include<cstring>

using namespace std;

void StrFilter(const char *InputStr,long len, char *OutputStr)  // 过滤函数
{
const char *p=InputStr;
int flag[26];     // 没必要用flag[256],减去a的ascii码即可
memset(flag,0,26);
while(*p!='\0')
{
flag[*p-'a']++;
*p++;
}
const char *p1=InputStr;
while(*p1!='\0')
{
if(flag[*p1-'a']==1)
*OutputStr++=*p1;
*p1++;
}
*OutputStr='\0';
}

void main()
{
char Str[]="abacacde";
char *output=new char[strlen(Str)+1];
StrFilter(Str,strlen(Str),output); //传递地址,在StrFilter函数内,要改变地址指向的值;
cout<<output<<endl;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: