グラフにサイクルが含まれている場合 (トポロジカルな並べ替えがない場合)、次の 2 つのトリックが役に立ちます。
1) ダイナミクスを n 回計算します。ここで、n はグラフ内の頂点の数です (Ford-Bellman アルゴリズムとの類推による)。しかし、これでは漸近線が大きくなり、一般に効率的になることはほとんどありません。
2) グラフの圧縮を構築します。元のグラフの強連結成分ごとに、問題を個別に解決します。凝縮されたグラフは非巡回であり、その場合、頂点値として、強く接続されたコンポーネントの計算値を使用しながら、トポロジカル ソートによる標準的なアプローチを使用できます。この方法が主に使われます。