Contact: aviboots(AT)netvision.net.il
40,769 questions
53,151 answers
573 users
def overlap(a, b): max_len = min(len(a), len(b)) for k in range(max_len, 0, -1): if a[-k:] == b[:k]: return a[-k:] return [] a = [1, 2, 3, 4, 5] b = [4, 5, 6, 7, 8] print(overlap(a, b)) ''' run: [4, 5] '''
def overlap(a, b): for k in range(min(len(a), len(b)), 0, -1): if all(x == y for x, y in zip(a[-k:], b[:k])): return a[-k:] return [] a = [1, 2, 3, 4, 5] b = [4, 5, 6, 7, 8] print(overlap(a, b)) ''' run: [4, 5] '''