python - 整数列表中的最大距离
问题描述
如何在python中找到列表的两个相同元素/整数之间的最大距离。例如,如果一个列表是[1,3,3,5,6,4,8,6,0,3,5]
输出将是8
(距离 b/w 3 在这里是最大的)
解决方案
您可以使用字典来为每个值保存索引。
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)
推荐阅读
- reactjs - 调用嵌套的 package.json 脚本
- amazon-web-services - S3 - 无法使用 Root 帐户公开某些文件夹
- c# - 根据某个字符串(页眉)将方法调用定向到某个类
- javascript - 如何使会话数据可用于 Node.js Express 中的所有模板
- git - Jenkins 管道复杂的 Git 结账
- android - 如何在 Android Gradle 中检查特定工件是否存在于 mavenLocal 存储库(即 .m2 存储库)中?
- excel - 如何获取字符串的特定索引
- vb.net - 为什么在 vb.net 中页面大小不会改变
- python - 使用 Selenium Python 处理甜蜜警报 2 通知
- android - Android 电信系统角色管理器