当前位置: 首页 > news >正文

LeetCode刷题---哈希表---387

字符串中的第一个唯一字符

387. 字符串中的第一个唯一字符 - 力扣(LeetCode)

题目:

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

示例 1:

输入: s = "leetcode"
输出: 0

示例 2:

输入: s = "loveleetcode"
输出: 2

示例 3:

输入: s = "aabb"
输出: -1

提示:

  • 1 <= s.length <= 105
  • s 只包含小写字母

自己的思路和代码:

思路:

        我们可以对字符串进行两次遍历。

        在第一次遍历时,我们使用哈希映射统计出字符串中每个字符出现的次数。在第二次遍历时,我们只要遍历到了一个只出现一次的字符,那么就返回它的索引,否则在遍历结束后返回 −1。

代码:
class Solution {
public:
    int firstUniqChar(string s) {
        unordered_map<char, int> count;

        for (char c : s) {
            count[c]++;
        }

        for (int i = 0; i < s.size(); i++) {
            if (count[s[i]] == 1) {
                return i;
            }
        }

        return -1;  
    }
};

相关文章:

  • 【机器学习】线性回归 多元线性回归
  • 【嵌入式Linux应用开发基础】fork()函数
  • vue事件修饰符的实现
  • 作用域链精讲
  • Ubuntu 下 nginx-1.24.0 源码分析 - ngx_save_argv函数
  • docker下部署kong+consul+konga 报错问题处理
  • 蓝桥杯班级活动
  • Springboot集成Spring AI和Milvus,验证RAG构建过程
  • 【Java线程中断】线程中断后为什么要调用interrupt()?
  • 超低失真、超高清晰度的远心工业镜头
  • 20250217-POMO笔记
  • STM32 CubeMx配置串口收发使用DMA并调用Idle模式(二)
  • 详解CountDownlatch
  • MaxKB + Ollama + DeepSeek本地部署
  • 输入网址到网页显示,发生了什么?
  • 人工智能框架:连接理论与实践的桥梁
  • VAS1260IB05E 集成内部开关驱动器的汽车级LED硬灯带高效解决方案
  • Gentleman:优雅的Go语言HTTP客户端工具包
  • 【GESP】2024年12月图形化一级 -- 火箭回收
  • Anchor-Based 与 Anchor-Free
  • 做网站开始要注意什么/网站关键字优化技巧
  • 网站怎么加载图片做logo/人工智能的关键词
  • 云主机 网站吗/全球网站流量查询
  • 免费模板建设网站/关于软文营销的案例
  • 湖南住房和城乡建设厅网站/百度搜索官网
  • 福田欧曼官网/福州百度推广排名优化