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;
}
相关推荐
Frostnova丶4 分钟前
LeetCode 1356. 根据数字二进制下1的数目排序
数据结构·算法·leetcode
GEO行业研究员9 分钟前
AI是否正在重构个体在健康相关场景中的决策路径——基于系统建模与决策链条结构分析的讨论
人工智能·算法·重构·geo优化·医疗geo·医疗geo优化
岛雨QA12 分钟前
哈希表「Java数据结构与算法学习笔记8」
数据结构·算法
独自破碎E17 分钟前
【DFS】BISHI76 迷宫寻路
算法·深度优先
寄存器漫游者24 分钟前
Linux 线程间通信
数据库·算法
岛雨QA34 分钟前
查找算法「Java数据结构与算法学习笔记7」
数据结构·算法
宝贝儿好44 分钟前
【强化学习】第十章:连续动作空间强化学习:随机高斯策略、DPG算法
人工智能·python·深度学习·算法·机器人
isyoungboy1 小时前
从图像中提取亚像素边缘点
算法
郝学胜-神的一滴1 小时前
深入理解链表:从基础到实践
开发语言·数据结构·c++·算法·链表·架构
岛雨QA1 小时前
排序算法「Java数据结构与算法学习笔记6」
数据结构·算法