📅  最后修改于: 2023-12-03 15:37:13.959000             🧑  作者: Mango
本题是一个简单的字符串处理问题。要求在一个字符串中找出第一个不重复的字符,如果不存在则返回 -1。
实现思路:
遍历字符串,通过一个字典记录每个字符出现的次数。
再次遍历字符串,返回第一个出现次数为 1 的字符。
实现代码如下所示:
def find_first_non_repeating_character(string):
char_frequency = {}
for char in string:
if char in char_frequency:
char_frequency[char] += 1
else:
char_frequency[char] = 1
for char in string:
if char_frequency[char] == 1:
return char
return -1
该函数接受一个字符串作为输入,返回第一个不重复的字符或 -1。
例如,对于字符串 "aabbccddee",调用该函数会返回 -1,因为所有的字符都是重复的;对于字符串 "abcdabc",调用该函数会返回 'd',因为 'd' 是第一个出现次数为 1 的字符。
使用该函数的示例如下:
>>> find_first_non_repeating_character("aabbccddee")
-1
>>> find_first_non_repeating_character("abcdabc")
'd'
以上是本题的解题思路和代码实现,希望对程序员们有所帮助。