您的位置:首页 > Web前端

剑指Offer:第一个只出现一次的字符

2014-07-24 01:01 253 查看
题目:在字符串中找出第一个只出现一次的字符。如输入"abaccdeff",这输出'b'

// 第一个只出现一次的字符

#include <stdio.h>

char first_not_repeat_char(char *s)
{
int count[256]={0};
char *pkey;

if( s==NULL )
{
printf("The string should not be NULL\n");
return '\0';
}

for(pkey=s; *pkey != '\0'; pkey++)
count[*pkey]++;
for(pkey=s; *pkey != '\0'; pkey++)
if( count[*pkey] == 1 )
return *pkey;

return '\0';
}

int main(void)
{
char s[1001];
printf("Please input a string: ");
scanf("%s",s);
char first = first_not_repeat_char(s);
if(first != '\0')
printf("First not repeat char is: %c\n",first);
else
printf("Not found\n");
char *p=0;

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: