Welcome to Software Development on Codidact!
Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.
Post History
You could just iterate through the list of lists and compare each list with the list that you're looking for. Once you've found a combination that matches you can add the combination to a dictiona...
Answer
#1: Initial revision
You could just iterate through the list of lists and compare each list with the list that you're looking for. Once you've found a combination that matches you can add the combination to a dictionary of combinations if the combination isn't there. If you find a combination that is already there you increment the occurrences of that combination. When you've gotten all occurrences of all combinations you can grab that combination that has the highest occurrences. I wrote some code that demonstrates how you might do this: ``` listA = [['1', '1', '0', '1', '0', '1', 'down'], ['0', '0', '1', '1', '1', '1', 'up'], ['1', '0', '0', '1', '0', '1', 'up'], ['0', '0', '0', '1', '1', '0', 'up'], ['1', '1', '0', '0', '0', '0', 'up'], ['1', '1', '1', '1', '1', '1', 'down'], ['0', '0', '1', '1', '0', '1', 'down'], ['1', '0', '0', '0', '0', '1', 'down'], ['1', '1', '1', '1', '1', '1', 'down'], ['1', '1', '1', '1', '1', '1', 'up'], ['1', '1', '1', '1', '1', '1', 'up'], ['1', '1', '1', '1', '1', '1', 'up'] ] listB = ['1', '1', '1', '1', '1', '1'] highestOccurence=0 matchingCombinations={} indexHighest=0 def findEqual(listB, combination): found=False for index, value in enumerate(listB): if value==combination[index]: found=True continue else: found=False break return found for index, combination in enumerate(listA): if findEqual(listB, combination): if str(combination) in matchingCombinations.keys(): matchingCombinations[str(combination)]+=1 else: matchingCombinations[str(combination)]=1 if matchingCombinations[str(combination)]>highestOccurence: indexHighest=index highestOccurence=matchingCombinations[str(combination)] print(matchingCombinations) print(listA[indexHighest]) ``` The code outputs ``` {"['1', '1', '1', '1', '1', '1', 'down']": 2, "['1', '1', '1', '1', '1', '1', 'up']": 3} ['1', '1', '1', '1', '1', '1', 'up'] ```