Найти все циклы.
Определение цикла без аккордов - это набор точек, в которых цикл этих точек не существует. Итак, если у вас есть все циклы, проблема состоит в том, чтобы просто устранить циклы, которые имеют подмножество циклов.
Для эффективности, для каждого найденного вами цикла, переберите все существующие циклы и убедитесь, что он не является подмножеством другого цикла или наоборот, и, если так, исключите больший цикл.
Кроме того, единственная трудность - понять, как написать алгоритм, который определяет, является ли набор подмножеством другого.