谢邀。我第一眼的想法是先通过 BFS 产生生成树,再补回原来的边。
假设补的边所连的节点为a和b,那么就 DFS 求生成树上a到b的所有简单路径(如果环长度有限制,这里可以剪枝),将该路径加上(a,b),就是一个答案。
NP问题无疑。