python中的多节点图到单节点图

时间:2019-04-16 06:35:37

标签: python recursion data-structures dfs

我有一个有向无环图,像这样:

        var stores = context.SystemUser
                         .Include(x => x.Stores)
                         .ThenInclude(a => a.StoreStockDetail)
                         .Where(b => b.UserName == userName).SelectMany(user => user.Stores);
        var report = new
        {
            FrontStoreMin = stores.Min(store => store.StoreStockDetail.FrontStore),
            FrontStoreMax = stores.Max(store => store.StoreStockDetail.FrontStore),
            FrontStoreMean = stores.Average(store => store.StoreStockDetail.FrontStore),
            // do the same for BackStore and ShoppingWindow
        };

在这里,每个字母都是一个节点。 从上面的图形中,我想要具有单个节点的所有图形的列表。 例如 一个图形可以是:[a, b, c] --> [p, q] --> [p, a, c] --> [x, y, z] 另一个可以是:a --> p --> a --> y等。

我可以在主图形上进行b --> p --> p --> z遍历,但是我不确定如何执行多个DFS来提取每个具有单个字符的图形

1 个答案:

答案 0 :(得分:1)

如果有节点集列表,则可以执行以下操作-

from itertools import product
s =[[1, 2], [3, 4, 5], [6, 7]]
list(product(*s))

输出-

  

[(1、3、6),(1、3、7),(1、4、6),(1、4、7),(1、5、6),(1、5、7 ),(2,   3,6),(2,3,7),(2,4,6),(2,4,7),(2,5,6),(2,5,7)]

相关问题