💡
原文中文,约900字,阅读约需3分钟。
📝
内容提要
文章讨论了如何在字符串中找到第一个唯一字符。通过使用HashMap统计字符出现次数,分两次遍历字符串:第一次计数,第二次查找第一个出现一次的字符。时间复杂度为O(n),空间复杂度为O(n)。
🎯
关键要点
- 文章讨论如何在字符串中找到第一个唯一字符。
- 使用HashMap统计字符出现次数,分两次遍历字符串。
- 第一次遍历用于计数,第二次遍历查找第一个出现一次的字符。
- 时间复杂度为O(n),空间复杂度为O(n)。
- 最坏情况下,HashMap的键值对数量为n。
❓
延伸问答
如何在字符串中找到第一个唯一字符?
通过使用HashMap统计字符出现次数,分两次遍历字符串:第一次计数,第二次查找第一个出现一次的字符。
这个算法的时间复杂度和空间复杂度分别是多少?
时间复杂度为O(n),空间复杂度为O(n)。
为什么需要两次遍历字符串?
第一次遍历用于统计字符出现次数,第二次遍历用于查找第一个出现一次的字符。
HashMap在这个算法中有什么作用?
HashMap用于统计每个字符的出现次数,以便在第二次遍历中快速查找唯一字符。
在最坏情况下,HashMap的键值对数量是多少?
在最坏情况下,HashMap的键值对数量为n。
如果字符串中没有唯一字符,函数会返回什么?
如果没有唯一字符,函数会返回'$'。
➡️