Я хочу сгруппировать кортежи на основе похожих атрибутов

У меня есть список кортежей. [(1, 2), (2, 3), (4, 3), (5, 6), (6, 7), (8, 2)]

Я хочу сгруппировать их в списки, основанные на том, какие кортежи связаны (имеют связанные значения).

Таким образом, конечный результат - два списка связанных значений кортежей = [[1, 2, 3, 4, 8], [5, 6, 7]]

Как я могу написать функцию для этого? Это был вопрос собеседования. Я пытался сделать это на Python, но яЯ разочарован и просто хочу увидеть логику ответа, поэтому даже код psuedo поможет мне, и я пойму, что я сделал неправильно.

У меня было всего несколько минут, чтобы сделать это на месте, но вот что я попробовал:

def find_partitions(connections):
 theBigList = []     # List of Lists
 list1 = []          # The initial list to store lists
 theBigList.append(list1)

 for list in theBigList:
 list.append(connection[1[0], 1[1]])
     for i in connections:
         if i[0] in list or i[1] in list:
             list.append(i[0], i[1])

         else:
             newList = []
             theBigList.append(newList)

По сути, парень хотел список списков значений, которые были связаны. Я пытался использовать цикл for, но понял, что это нет работа, а потом время истекло.

Ответы на вопрос(5)

Ваш ответ на вопрос