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

class Solution {

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

public int firstUniqChar(String s) {

int size = s.length();

//存取每个数字的出现次数用哈希表

//{c=1, t=1, d=1, e=3, l=1, o=1}

//hashmap存元素是无序的吗 -> yes无序的

HashMap<Character,Integer> map = new HashMap<>();

for(char c:s.toCharArray()){

map.put(c,map.getOrDefault(c,0)+1);

}

System.out.println(map);

for(int i = 0;i < s.length();i++){

if(map.get(s.charAt(i)) == 1){//s.charAt(i))这个是关键

return i;

}

}

return -1;

}

}

相关推荐
谷雨不太卷1 天前
进程的状态码
java·前端·算法
散峰而望1 天前
【算法竞赛】C/C++ 的输入输出你真的玩会了吗?
c语言·开发语言·数据结构·c++·算法·github
躺不平的理查德1 天前
时间复杂度与空间复杂度备忘录
数据结构·算法
yaki_ya1 天前
yaki-C语言:从概念基础到内存解析---数组(array)完全指南
java·c语言·算法
刃神太酷啦1 天前
扒透 STL 底层!map/set 如何封装红黑树?迭代器逻辑 + 键值限制全手撕----《Hello C++ Wrold!》(23)--(C/C++)
java·c语言·javascript·数据结构·c++·算法·leetcode
挽星安1 天前
代码随想录算法训练营第五十天|卡码网 99 岛屿数量、卡码网 100 最大岛屿的面积
算法
葫三生1 天前
《论三生原理》系列构建文理同构的认知体系?
人工智能·科技·深度学习·算法·机器学习·transformer
.NET修仙日记1 天前
2026 .NET 面试八股文:高频题 + 答案 + 原理(面试加分技巧)
面试·职场和发展·.net·.net core·微软技术
多加点辣也没关系1 天前
数据结构与算法|第六章:队列
数据结构·算法·队列
_深海凉_1 天前
LeetCode热题100-分割回文串
算法·leetcode·职场和发展