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

一、题目

函数原型

int firstUniqChar(char* s)
二、算法

设置一个大小为26的字符数组,位置0 - 25 分别对应字符 a - z 。遍历两次字符串,第一次记录下每个字符出现的次数,第二次检查哪个字符最先遍历到且出现次数为1,返回该字符即可。
三、代码

cpp 复制代码
int firstUniqChar(char* s) {
    int nums[26]={0};
    memset(nums,0,sizeof(nums));
    int sz=strlen(s);
    for(int i=0;i<sz;i++)
    {
        nums[s[i]-'a']++;
    }
    for(int i=0;i<sz;i++)
    {
        if(nums[s[i]-'a']==1)
            return i;
    }
    return -1;
}
相关推荐
wjykp4 分钟前
part4 反向传播算法(BP算法)
人工智能·算法·机器学习
AndrewHZ4 分钟前
【图像处理基石】图像处理领域还有哪些核心挑战与难题?
图像处理·人工智能·算法·计算机视觉·噪声·图像增强·画质增强
啊阿狸不会拉杆5 分钟前
《数字图像处理》实验8-图像识别与分类
图像处理·人工智能·算法·分类·数据挖掘·数字图像处理
月明长歌8 分钟前
【码道初阶】Leetcode138:随机链表的复制:用 HashMap 做深拷贝的标准解法
java·数据结构·算法·leetcode·链表·哈希算法
yyy(十一月限定版)17 分钟前
C语言——堆
c语言·开发语言·算法
喜欢吃燃面19 分钟前
算法竞赛中的数据结构:图
开发语言·数据结构·c++·学习·算法
小李小李快乐不已26 分钟前
贪心算法理论基础
c++·算法·leetcode·贪心算法
爱喝热水的呀哈喽27 分钟前
子模代数。
算法·编辑器
qq_4308558830 分钟前
线代第三章向量第三节:向量间的线性关系二
人工智能·算法·机器学习
AC赳赳老秦30 分钟前
CSV大文件处理全流程:数据清洗、去重与格式标准化深度实践
大数据·开发语言·人工智能·python·算法·机器学习·deepseek