Python 我的函数不起作用(起作用但给出错误答案)
我试图得到这样的结果: [5,4,8] 但我得到了这个:[]Python 我的函数不起作用(起作用但给出错误答案),python,Python,我试图得到这样的结果: [5,4,8] 但我得到了这个:[] listA = [4,1,8,4,5] listB = [5,6,1,8,4,5] class Solution(object): def getIntersectionNode(listA,listB): de=[] for i in range(-1,-len(listB)): for j in range(-1,-len(listB)):
listA = [4,1,8,4,5]
listB = [5,6,1,8,4,5]
class Solution(object):
def getIntersectionNode(listA,listB):
de=[]
for i in range(-1,-len(listB)):
for j in range(-1,-len(listB)):
if listA[i] == listB[i]:de.append(listA[-1])
elif listA[-1] != listB[-1]: print("null")
return de
此代码有什么问题?如果您不需要担心重复:
listA = [4,1,8,4,5]
listB = [5,6,1,8,4,5]
class Solution(object):
def getIntersectionNode(listA,listB):
de=list(set(listA) & set(listB))
return de
print(Solution.getIntersectionNode(listA,listB))
交叉点不是[8,1,4,5] 如果您想要的是交叉点,可以使用集合轻松实现:
list(set(listA).intersection(set(listB)))
为什么在范围内使用负数?这些可能是空范围。没有使用变量j,这可能是一个输入错误。您不应该得到任何结果,因为您从未创建过该类的实例。我需要从末尾开始。这是否回答了您的问题?它必须从列表的末尾开始,当它不同时必须停止。在这种情况下,它只有5,4,8