第一个只出现一次的字符
来源:互联网 发布:海拔高度查询软件 编辑:程序博客网 时间:2024/05/20 06:40
题目描述
在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置
/*map查找的时间复杂度为log(n),底层实现为红黑树,查找频率不高的时候用map*/class Solution {public: int FirstNotRepeatingChar(string str) { int len=str.size(); if(len<1||len>10000) return -1; map<char,int> map1; for(int i=0; i<len; ++i) map1[str[i]]++; for(int i=0; i<len; ++i) if(map1[str[i]]==1) return i; return -1; }};
二:先在hash表中统计各字母出现次数,第二次扫描直接访问hash表获得次数
int FirstNotRepeatingChar(string str) { if ( str.length() == 0) return -1; unsigned int hashTime[256] = {0}; for(int i =0;i<str.length();++i) hashTime[str[i]]++; for(int i =0;i<str.length();++i) { if(hashTime[str[i]] == 1) return i; } return -1; }
阅读全文
0 0
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 常见数据结构查找、插入、删除、遍历性能比较 常见排序算法的比较(图)
- HihoCoder-1578 Visiting Peking University(模拟,ACM-ICPC国际大学生程序设计竞赛北京赛区(2017)网络赛)
- Revit中Dynamo编程——在Python中怎么导入任意的dll文件
- 辨别相加溢出
- 以Point类为基础,定义一个平面中的Circle类
- 第一个只出现一次的字符
- 线程变量的设计与实现
- Java权限验证框架Shiro的入门
- class Statistical Thinking in Python (Part 1)
- LeetCode.160 Intersection of Two Linked Lists
- javascript 单击按钮出现文本内容
- 在linux虚拟机的tomcat上发布web项目时,远程无法访问,响应码404...
- pdf.jsw
- css实现三角形