字符串中第一个只出现一次的字符
题目:给定一个字符串,然后判断字符串中第一只出现一次的字符位置,然后返回它的位置
一个字符总共有8位,那么就会有256种可能。
int first_aperance(string &str){if (str.length() == 0)return -1;int hash[256];for (int i = 0; i < str.length(); i++){hash[str[i]]++;}//统计顺序,按照读取的顺序进行统计for (int i = 0; i < str.length(); i++){//这里是很关键的,我们在查找的时候是按照字符在//字符串中的出现顺序读取的,因此总的时间复杂度还是O(n)if (hash[str[i]] == 1){return i;}}return -1;
}
总结:使用map key-value有点大财小用
如果我们构造一个数组,数组大小为256,包含了ASCII码的范围
然后遍历的时候是按照字符在字符串中出现的顺序进行统计的
字符串中第一个只出现一次的字符相关推荐
- 《剑指offer》第五十题(字符串中第一个只出现一次的字符)
// 面试题50(一):字符串中第一个只出现一次的字符 // 题目:在字符串中找出第一个只出现一次的字符.如输入"abaccdeff",则输出 // 'b'. #include & ...
- 刷题笔记之十 (小易的升级之路+找出字符串中第一个只出现一次的字符+洗牌+MP3光标位置)
目录 1.存取任意指定序号的元素和在最后进行插入和删除运算,利用顺序表存储最节省时间 2. 数据结构中具有记忆功能的是栈 3. 递归程序的优化一般为 尾递归优化 4.二叉树遍历,前中后序遍历用到的是栈 ...
- 笔试强训第三周编程题part01(年终奖,迷宫问题;微信红包,计算字符串的距离;小易的升级之路,找出字符串中第一个只出现一次的字符,洗牌)
年终奖 OJ链接 此题是一道动态规划的问题 读题可知:只能从上往下和从左往右移动 由此需要前[i-1] [ j ]和[i][j-1]来比较大小来确实最优解. 其中有两种特殊情况,第一行和第一列 代码如 ...
- 找字符串中第一个只出现一次的字符
题目:在一个字符串中找到第一个只出现一次的字符. 举例:输入abaccdeff,则输出b. 答:假设字符占一个字节,则共有256不同的字符,开辟256空间,用查找表. #include "s ...
- 算法--06谷歌面试:字符串中第一个只出现一次的字符(Java实现)
Q题目 这道题是2006 年 google 的一道笔试题,如下: 在一个字符串中找到第一个只出现一次的字符.如输入 abaccdeff,则输出 b. A解法 这道题,说难也不难,关键是思路. 有些人思 ...
- 查找字符串中第一个只出现一次的字符
Java Map接口提供了将Key映射到值的对象,HashMap TreeMap 方法 功能 put(K key ,V value) 向集合中添加指定key ,value的映射关系 contains ...
- 【Java】 剑指offer(50-2) 字符流中第一个只出现一次的字符
本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集 题目 请实现一个函数用来找出字符流中第一个只出现一次的字符.例如,当从字 ...
- 找出google字符流中第一个只出现一次的字符(map/queue)
目录 解法一.hashmap 1.map的定义及插入,> 2.map的value获取及遍历 3.查找find(key) 4.计数count(key) 解法二.队列 1.队列 2.char以及op ...
- 寻找字符串中第一个仅仅出现一次打字符
寻找字符串中第一个仅仅出现一次打字符 代码例如以下: #include <iostream> #include <string>using namespace std;char ...
- 找第一个只出现一次的字符_剑指offer 字符流中第一个只出现一次的字符
题目描述: 请实现一个函数用来找出字符流中第一个只出现一次的字符.例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是'g'.当从该字符流中读出前六个字" ...
最新文章
- 用python操作MySQL
- arduino编译失败_Arduino编译时失败
- 测量人看过来:多种语言编写的测量坐标反算神器附源码(C#/VB)
- 全量增长模型-指标体系的构建及应用实战案例解析
- PHP XML操作类 xml2array -- 含节点属性
- 如何突破Windows环境限制打开“命令提示符”
- 充电速度公式_手机充电效率计算
- P2P共享经济都可接受 O2O×××有何不可?
- oracle练习(mldn视频)二
- activiti画图工具下载
- Unmapped Spring configuration files found. Please configure Spring facet or use ‘Create Default Con
- 预计招收300人,北京大学信息工程学院2022年夏令营开启报名
- 手把手带你撸一个校园APP(四):APP功能设计及主页面框架
- matlab 直流无刷电机,无刷直流电机的matlab仿真.pdf
- 微信小程序普通二维码解析
- 中规中矩的输入两个正整数m和n,求其最大公约数和最小公倍数。
- 插件式换肤框架搭建 - 资源加载源码分析
- 适配器模式 : 农村小伙娶乌克兰美女语言不通 翻译软件立功
- IOS版aplayer使用教程_Y Y的使用教程视频版/图片版(手机版。电脑版。楚恒上课必用软件)...
- 去哪儿网抢票成功率怎么样?