gpt4 book ai didi

python - 如何找到第一次出现的元素第二次出现的时间?

转载 作者:行者123 更新时间:2023-11-28 19:36:29 25 4
gpt4 key购买 nike

我想找到一个元素在列表中第二次出现的时间。例如,如果我的列表是

['1','2','1B','2B','2B','2','1B','1']

结果应该是 '2B'(或者它可以返回索引 4),因为元素 '2B' 是第一个出现两次(从左到右)的元素。

我知道我可以在进行过程中使用基本的 for 循环计数来做到这一点;我只是想知道最有效的方法是什么。

最佳答案

你不能比最坏的情况做得更好 O(N)。如果你想要简洁并且不介意一些副作用功夫,你可以使用带有条件生成器的next:

lst = ['1','2','1B','2B','2B','2','1B','1']
s = set()
next(x for x in lst if x in s or s.add(x))
# '2B'

关于python - 如何找到第一次出现的元素第二次出现的时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57994645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com