📜  门|门CS 2011 |问题 4(1)

📅  最后修改于: 2023-12-03 14:58:37.324000             🧑  作者: Mango

门|门CS 2011 |问题 4

该问题是门|门公司在2011年的招聘面试中的一道问题,旨在考察程序员对字符串处理的能力。

题目要求编写一个函数,该函数接收一个字符串作为输入,并判断字符串中是否存在重复的字符。如果存在重复字符,则返回 true,否则返回 false

下面是一个示例的实现代码(使用Python语言):

def has_duplicate_chars(string: str) -> bool:
    # 创建一个空集合用于存储已经遍历过的字符
    seen = set()

    for char in string:
        # 如果当前字符已经在集合中存在,则说明存在重复字符,返回true
        if char in seen:
            return True
        # 将当前字符添加到集合中
        seen.add(char)

    # 字符串中没有重复字符,返回false
    return False

该函数使用了一个集合 seen 来存储已经遍历过的字符。在遍历字符串的过程中,每次检查当前字符是否已经存在于集合中。如果存在重复字符,则立即返回 True。如果遍历完成后没有发现重复字符,则返回 False

你可以调用这个函数,将一个字符串作为参数传入,如下所示:

result = has_duplicate_chars("programming")
print(result)  # 输出:True

result = has_duplicate_chars("hello")
print(result)  # 输出:False

以上就是判断字符串中是否存在重复字符的示例代码。你可以根据自己的需要将其用于实际开发中的字符串处理任务中。