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

第一个只出现一次的字符

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

我采用的方法既不是数组又不是哈希表,直接利用StringBuilder这个类自带的方法,先将String类型转换为StringBuilder类型,在for循环遍历字符串,先拿到每一个下标的字符,再在该字符串的基础上删除这个字符,最后就是查看删除之后,字符串中是否存在相同的字符,如果存在,则把删除的字符重新添加回去,继续循环,如果不存在返回下标i;
public int FirstNotRepeatingChar(String str) {
StringBuilder sb=new StringBuilder(str);
for(int i=0;i<str.length();i++){
String s=sb.charAt(i)+"";
sb.deleteCharAt(i);
if(sb.indexOf(s)<0)
return i;
sb.insert(i,s);
}
return -1;
}

全部评论

相关推荐

回家当保安:复旦✌🏻,佬你的简历感觉挺好的,寒假日常hc比较少。佬可以过完年之后再试试,日常实习hc比较充足
点赞 评论 收藏
分享
求个付费实习岗位:这种就是吃满时代红利又没啥技术水平,只能靠压力学生彰显优越感的老登,别太在意了
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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