Пример #1
0
        private void RemoveUnreachableBlocks()
        {
            var root = graph.Roots().Single(v => v.IsSpecialBlock);

            var reachableBlocks   = graph.ReachableBlocks(root);
            var unreachableBlocks = graph.Vertices.Except(reachableBlocks).ToList();

            foreach (var unreachableBlock in unreachableBlocks)
            {
                graph.RemoveVertex(unreachableBlock);
            }
        }