首页 > 解决方案 > 整数列表中的最大距离

问题描述

如何在python中找到列表的两个相同元素/整数之间的最大距离。例如,如果一个列表是[1,3,3,5,6,4,8,6,0,3,5] 输出将是8(距离 b/w 3 在这里是最大的)

标签: pythonlist

解决方案


您可以使用字典来为每个值保存索引。

from collections import defaultdict

d = defaultdict(list)

for i,el in enumerate(l):
    d[el].append(i)

max_dist = max(d[k][-1]-d[k][0] for k in d)

推荐阅读