Minimum Index Sum of Two Lists-python

解答:运用python的dict快速创建hash索引

class Solution(object):
    def findRestaurant(self, list1, list2):
        pos1={v:pos for pos,v in enumerate(list1)} # 对list构建字典索引,键是数组的值,值是数组的下标
        length=len(list2)+len(list1)
        result=[]
        mind=length # 初始化下标和为两个列表长度之和
        for i,v in enumerate(list2): # 枚举列表2
            j=pos1.get(v,length) # 若列表2的值在字典pos1中
            if i+j < mind:#更新最小值 # 下标和小于当前mind,则更新最小值并把当前值最为最终返回值
                result=[v] 
                mind=i+j
            elif i+j==mind:#最小值一样
                result.append(v) # 返回列表中追加数组值
        return result

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值