题解 | C# #第一个只出现一次的字符#

第一个只出现一次的字符

http://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c

public int FirstNotRepeatingChar(string str)
{
if((str==null)||str.Length==0)return -1;
//好兄弟,咱们没有隔壁CharAt()可以直接用,用字典也是个方法
Dictionary<char, int> dic = new Dictionary<char, int>();
//遍历给字典赋值
for(int i =0;i<str.Length;i++)
{
if(dic.ContainsKey(str[i])==false)
dic.Add(str[i], 1);
else
{
dic[str[i]]++;
}
}
//遍历字典看有没有符合条件的,有则打印出来
for(int j =0;j<str.Length;j++)
{
if(dic[str[j]]==1)return j;
}
//都没有符合条件,返回-1
return -1;
}

全部评论

相关推荐

XingHaozhe:没啥大问题啊,Agent + 后端业务,勇敢投!
点赞 评论 收藏
分享
05-19 09:12
河南大学 Java
程序员小白条:怎么还用网上的经典项目,速成是很少有人去捞面试的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务