[剑指offer]第一个只出现一次的字符位置
2016-05-05 09:15
302 查看
题目描述
在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符的位置。若为空串,返回-1。位置索引从0开始分析:就是建立一个哈希表,把每个字符出现的次数求出来,第二次遍历找到第一个出现次数为1的字符。
代码:
class Solution { public: int FirstNotRepeatingChar(string str) { int n=str.size(); if(n==0) return -1; int count[256]={0}; int i=0; while(str[i]!='\0'){ count[str[i]]++; i++; } i=0; while(str[i]!='\0'){ if(count[str[i]]==1){ return i; } i++; } return -1; } };
相关文章推荐
- (OK) dnf - Fedora 23 - kernel - 安装低版本内核
- HTML5——拖放
- HTML-表格与表单
- js--异步编程的4种方法
- web前端学习笔记:文本属性
- HTML5——音频视频
- CSS语法详解
- JS工作随笔04
- DeDe分页样式,自定义分页样式
- 浅析JS异步加载进度条
- UFLDL 09 自我学习 Self-Taught Learning Unsupervised Feature Learning
- iOS-Git中的fetch和pull的区别
- 关于js中window.location.href,location.href,parent.location.href,top.location.href的用法
- HTML CSS 鼠标鼠标选中的更改颜色
- AngularJS入门(用ng-repeat指令实现循环输出
- CSS实现垂直居中的常用方法
- CSS魔法堂:重拾Border之——不仅仅是圆角
- rpm - dnf - all kernels of Fedora
- HTML5培训第11节课堂笔记(响应式布局:媒体查询,条件注释,mui基础知识,引导页小实例)
- CSS3-02 样式 1