У меня есть данные в форме ниже, которая составляет двудольную сеть.
A1 - B1
A2 - B2
A2 - B1
A3 - B1
A4 - B2
A5 - B3
A6 - B3
A7 - B3
A7 - B3
A8 - B4
A9 - B3
Что я хотел бы сделать - это написать что-нибудь (в идеале на python или C) или использовать существующую библиотеку для идентификации отдельных сообществ в данных. Например
A1, A2, A3, A4 являются частью одного сообщества, поскольку они подключаются к B1, B2, аналогично A5, A6, A7, A8, A9, все подключены к B3 и B4.
Я немного сбит с толку, прочитав множество различных статей о сетевом потоке и графиках относительно того, где именно находится моя проблема. Это просто форма поиска в ширину или есть более эффективные способы сделать это?
Спасибо