描述
找出字符串中第一个只出现一次的字符
数据范围:输入的字符串长度满足1≤n≤1000
输入描述:
输入一个非空字符串
输出描述:
输出第一个只出现一次的字符,如果不存在输出-1
示例1
输入:asdfasdfo
输出:o
记第一次中等难度题一遍过,耗时17分钟!
#include <stdio.h>
#include <string.h>
int main() {
int i,j,len,min,count=0;
char str[1000]={0};
scanf("%s",str);
len=strlen(str);
int first=len;
char record[128]={0};
for(i=0;i<len;i++)
{
record[str[i]]++;
}
for(i=65;i<124;i++)
{
if(record[i]==1)
{
for(j=0;j<len;j++)
{
if((str[j]==i)&&(j<first))
{
first=j;
}
}
count++;
}
}
if(count==0)
{
printf("-1");
}
else {
printf("%c",str[first]);
}
return 0;
}