387. 字符串中的第一个唯一字符——2020.12.27

  • 题目
  • 思路

题目

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。

示例:

s = “leetcode”
返回 0

s = “loveleetcode”
返回 2

思路

采用哈希表。注意,在搜寻哈希键值为1的时候,外层循环需要为数组长度,因为题目要求的是返回第一个不重复字符的索引。
class Solution {
public:
int firstUniqChar(string s) {
unordered_map<char, int> t;
for(int i=0;i<s.size();i++){
t[s[i]]++;
}
for(int i=0;i<s.size();i++){
if(t[s[i]] == 1) return i;
}
return -1;
}
};

387. 字符串中的第一个唯一字符相关推荐

  1. 387. 字符串中的第一个唯一字符(javascript)387. First Unique Character in a String

    leetcode:https://leetcode-cn.com/problems/first-unique-character-in-a-string/ 387. 字符串中的第一个唯一字符 给定一个 ...

  2. Leetcode 387. 字符串中的第一个唯一字符

    387. 字符串中的第一个唯一字符 给定一个字符串 s ,找到 它的第一个不重复的字符,并返回它的索引 .如果不存在,则返回 -1 . 示例 1: 输入: s = "leetcode&quo ...

  3. LeetCode:387.字符串中的第一个唯一字符

    字符串中的唯一字符就是字符出现次数为1的 思路:首先一次遍历,统计出每个字符的出现次数,再遍历字符,如果字符出现个数是1,则当前字符对应的小标就是要返回的值 public class Test387 ...

  4. 力扣 387. 字符串中的第一个唯一字符 C语言实现

    题目描述: 给定一个字符串 s ,找到 它的第一个不重复的字符,并返回它的索引 .如果不存在,则返回 -1 . 题目链接 方法一:哈希表 创建一个哈希表,遍历字符串中的字符,并在哈希表中查找该字符,如 ...

  5. Python——LeetCode刷题——【387. 字符串中的第一个唯一字符】

    题目描述: 解题思路: 逐个遍历字符串中的每个字符.用字典记录在字符串中每个字符的出现次数.最后遍历字符串中每个字符,字典中该字符作为key对应的value值为1,return首个value值为1的字 ...

  6. leetcode 387. 字符串中的第一个唯一字符(hash)

    给定一个字符串,找到它的第一个不重复的字符,并返回它的索引.如果不存在,则返回 -1. 示例: s = "leetcode" 返回 0 s = "loveleetcode ...

  7. leetcode 巧妙解法 387. 字符串中的第一个唯一字符

    给定一个字符串,找到它的第一个不重复的字符,并返回它的索引.如果不存在,则返回 -1. 案例: s = "leetcode" 返回 0. s = "loveleetcod ...

  8. leetcode 387. 字符串中的第一个唯一字符(First Unique Character in a String)

    目录 题目描述: 示例: 解法: 题目描述: 给定一个字符串,找到它的第一个不重复的字符,并返回它的索引.如果不存在,则返回 -1. 示例: s = "leetcode"返回 0. ...

  9. 【数据结构】387. 字符串中的第一个唯一字符

    题目 给定一个字符串 s ,找到 它的第一个不重复的字符,并返回它的索引 .如果不存在,则返回 -1 .示例 1:输入: s = "leetcode" 输出: 0 示例 2:输入: ...

最新文章

  1. OpenCV 笔记(03)— 读取视频、通过摄像头采集视频、采集视频 canny 边缘检测
  2. 创建一个plugin - drupal 8
  3. 软件测试学习之 ---------- MySQL的查询(重中之重)
  4. python怎么重新开始_Python-重新开始游戏
  5. 什么是python基础教程-python基础教程之python是什么?概念解析
  6. java sdk他edk de区别_最低SDK版本/目标SDK版本与编译SDK版本之间有什么区别?
  7. 字节小组长无意中得知整个部门的薪资,自己28K,手下却有35K,怎么办
  8. Linux用php上传表单文件,文件太大提示[413 Request Entity Too Large]
  9. 东方木分享:如何快速的安装网吧系统
  10. Common Digester学习
  11. Nessus安装教程
  12. ubuntu linux mac地址,告诉你Ubuntu更改mac地址的方法及命令
  13. Windows下强制删除文件或文件夹
  14. PTA (特立独行的幸福)
  15. C# 基础学习第四天
  16. 转一篇帖子-我是如何在网上卖鱼的
  17. Combo Box 组合框
  18. lga2066服务器准系统,LGA2066低配版Corei7-7740K再曝光:21WTDP换来100MHz频率
  19. 研发人员的几个典型性格特征
  20. 软件行业装机卖软件模式没落 转型SaaS服务趋势明显

热门文章

  1. ubuntu 安装依赖包时出现The following packages have unmet dependencies:
  2. Linux安装GaussDB数据库图文,GaussDB 100 on Linux安装手册
  3. 【C++】之内联函数(inline)
  4. 普通话测试软件哪个不要钱,普通话测试软件哪个好_普通话测试软件靠谱吗_不要钱的普通话测试软件...
  5. Java 将Map转成Json
  6. Mac 安装homebrew
  7. 天翼云服务器的一些问题及解决方式
  8. salesforce中常用技能总结(纯粹干货,深度积累)图解
  9. 如何快速从国外官网下载软件
  10. Are Graph Augmentations Necessary? Simple Graph Contrastive Learning for Recommendation