首页 > 其他分享 >字符串中的第一个唯一字符

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

时间:2024-03-26 15:29:21浏览次数:24  
标签:字符 第一个 index int ++ map 字符串 unordered size

题目:

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

代码:

class Solution {
public:
    int firstUniqChar(string s) {
        int size = s.size();
        int index = -1;
        //用unordered_map集合存取键值对
        unordered_map<char,int> m;
        for(int i = 0;i < size;i++){
            m[s[i]]++;
        }
        for(int i = 0;i < size;i++){
            if(m[s[i]] == 1){
                index = i;
                break;
            }
        }
        return index;
    }
};

标签:字符,第一个,index,int,++,map,字符串,unordered,size
From: https://blog.csdn.net/m0_72651514/article/details/137042815

相关文章

  • base64_encode都有哪些字符
    base64_encode函数会使用一组固定的64个字符来表示编码后的数据。这些字符包括:大写字母A-Z(共26个字符)小写字母a-z(共26个字符)数字0-9(共10个字符)加号(+)斜杠(/)此外,编码时还可能会使用一个或两个等号(=)作为填充字符,用于确保编码结果长度是4的倍数。因此......
  • 深入探讨iOS开发:从创建第一个iOS程序到纯代码实现全面解析
    iOS开发作为移动应用开发的重要领域之一,对于开发人员具有重要意义。本文将深入探讨iOS开发的各个方面,从创建第一个iOS程序到纯代码实现iOS开发,带领读者全面了解iOS应用程序的开发流程和技术要点。 ......
  • 字符串
    基础使用#获取字符串中的某一个字符s[0]s[1]#字符串的索引从0开始,切片s[0]取出第0个位置的字符s[2:7]取出第2-6位置的字符s[2:]取出第2个字符及其后面的所有字符s[:2]取出0-1位置的字符s[::]输出所有字符串s[::-1]反向输出所有字符串s*n将字符串......
  • 【python】字符串(Str)
    字符串是python中最常用的数据类型,在整个变成阶段都起到了关键性的作用。目录前言正文一、字符串的定义二、字符编码转换1、编码的历史(了解即可)2、字符串的编码转换    1)、encode()    2)、 decode()三、转义字符四、字符串的基本操作1、访......
  • 编码揭秘:解构字符%20背后的秘密与百分号编码艺术
    前言提到这个%20,想必大家都见过,熟悉一点编码的人,还会知道这玩意就是空格转换而来!那么我们一起破解,如何编码而来?我们今天继续学习前端编码知识,其他编码文章:前端Base64编码知识,一文打尽,探索起源,追求真相。localStorage灵魂五问。5M??10M!!!字母a的6种表示方法,以及其背后......
  • 字符串逆序
    文章目录一、字符串?二、思路三、运行代码 一、字符串?在C语言中,字符串实际上是使用空字符 \0 结尾的一维字符数组。因此,\0 是用于标记字符串的结束。二、思路从左++和右--到中间。赋值最左边和最右边给指针left、right,然后通过left++、right--进行逆序。......
  • java------字符串
    Java中字符串理解:1.字符串不可变,它们的值在创建后不能被更改。这里说的是,他们的值而不是地址值。 当我们使用Strings=“hello”;语句创建字符串的时候,首先会去常量池中查找,如果有,就返回这个常量的地址,如果没有,在常量池中创建并返回。world也是这样的。比如这里的“hello”......
  • R语言中拆分长字符串
     00196,GO:0051093,GO:0051094,GO:0051171,GO:0051172,GO:0051173,GO:0051239,GO:0051240,GO:0051241,GO:0051246,GO:0051247,GO:0051248,GO:0051252,GO:0051254,GO:0051704,GO:0051716,GO:0051896,GO:0051897,GO:0051960,GO:0051961,GO:0051962,GO:0055082,GO:0060147,GO:......
  • 蓝桥杯算法基础(29)字符串匹配(RabinKarp)(KMP)(前缀树,字典树,trie,后缀数组,高度数组)
     RabinKarpRabinKarpS:ABABABm个P:ABBn个1.朴素算法,挨个匹配2.哈希法hash->滚动哈希c0*31^2+c1*31^1+c2类似于进制的求法求hash值(c0*31+c1)*31+c2hash(p)=o(n)hash(s)=o(m*n)privatestaticvoidmatch(Stringp,Strings){longhash_p=hash(p);......
  • Java面试题:请解释Java中的字符串和字符串缓冲区?
    一、请解释Java中的字符串和字符串缓冲区?Java中的字符串(String)和字符串缓冲区(StringBuffer)都是用来处理字符序列的类,但它们之间有一些重要的区别。字符串(String)不可变性:字符串是不可变的,一旦创建就不能被修改。如果需要修改字符串,实际上是创建了一个新的字符串对象。字符......