劍指offer--找出字串中第一個只出現一次的字元(題面已經更新)C++
阿新 • • 發佈:2019-01-31
題目描述:
找出字串中第一個只出現一次的字元
輸入描述:
輸入一個非空字串
輸出描述:
輸出第一個只出現一次的字元,如果不存在輸出-1
示例1
輸入
asdfasdfo
輸出
ö
程式碼實現如下:
#include<iostream>
#include<string>
#include<map>
using namespace std;
int main()
{
string str;
while(cin>>str)
{
bool flag=false;
map<char ,int> m;
for(int i=0;i<str.size();i++)
{
m[str[i]]++;
}
int i=0;
for(int i=0;i<str.size();i++)
{
if(m[str[i]]==1)
{
cout<<str[i]<<endl;
flag=true;
break ;
}
}
if(!flag)
{
cout<<-1<<endl;
}
}
return 0;
}
#include<iostream>
#include<string>
#include<map>
using namespace std;
int main()
{
string str;
while(cin>>str)
{
map<char,int > m;
for(int i=0;i<str.size();i++)
{
m[str[i]]++;
}
int i=0;
for(i;i<str.size();i++)
{
if(m[str[i]]==1)
{
cout<<str[i]<<endl;
break;
}
}
if(i==str.size())
{
cout<<-1<<endl;
``````
}
}
return 0;
}