示例代码如下:
def find_duplicates(lst):
    seen = set()
    duplicates = set()
    for item in lst:
        if item in seen:
            duplicates.add(item)
        else:
            seen.add(item)
    return list(duplicates)
这个函数通过使用一个集合(set)来保存已经出现过的元素,再使用另一个集合来保存出现过的重复元素,从而得出重复元素的列表。该函数的时间复杂度为 O(n),其中 n 是列表的长度。
示例输入:
find_duplicates([1, 2, 3, 2, 4, 3, 5, 6, 5])
示例输出:
[2, 3, 5]
该函数的输出是一个包含重复元素的新列表。