小编Dyn*_*ite的帖子

枚举有向非循环图中的所有路径

是否有任何标准算法可以在有向a-cyclic图中找到所有可能的路径.如果没有,我如何在BFS/Dijkstra /任何其他算法中进行更改以枚举DAG中的所有路径

algorithm graph

6
推荐指数
2
解决办法
1万
查看次数

在python中列出作为引用类型

以下是我编写的用于计算第n个素数的代码.我初始化arr = [2,3,5]; 和prime(arr,n)应该修改arr以包含前n个素数.但arr并不反映prime(arr,n)执行后的变化.我读到列表作为引用类型传递,所以下面的代码中的问题是什么.t表示必须进行验证的测试用例的数量.

该程序导致错误,表明数组索引超出了arr的范围.

import sys;
def prime (arr,n):
    while(len(arr)< n):
        num=arr[len(arr)-1]+1;prime=0;
        while(prime==0):
            prime = 1
            for val in arr:
                if(num%val==0):
                    prime=0;
                    break;
            if(prime == 1):
                print "hello";
                arr = arr + [num];print arr; print "--";
            else:
                num = num+1;


t=raw_input();
t=int(t);
arr=[2,3,5];
ans =[];
for v in range (0,t):
    n = raw_input();
    n = int(n);
    if(n<=len(arr)):
        ans = ans + [arr[n-1]];
    else:
        prime(arr,n);print arr;print"arr was printed"
        ans= ans + [arr[n-1]];
print ans;print 'ans ';
Run Code Online (Sandbox Code Playgroud)

以下是上述代码的示例运行

>>> 
1
4 …
Run Code Online (Sandbox Code Playgroud)

python primes

2
推荐指数
1
解决办法
147
查看次数

重置c#中的列表

以下是我用来计算列表中元素的幂集的两段代码

代码1)

 public static List<List<int>> getCpower(List<int> list)
    {
        var result = new List<List<int>>();
        for (int i = 0; i < (1 << list.Count); i++)
        { 
            var sublist = new List<int>();
            for (int j = 0; j < list.Count; j++)
            {   if ((i & (1 << j)) != 0)
                {   sublist.Add(list[j]); 
                }
            }
            result.Add(sublist); 
        }

        return result;
    }
Run Code Online (Sandbox Code Playgroud)

代码2)

public static List<List<int>> getCpower(List<int> list)
    {
        var result = new List<List<int>>();var sublist = new List<int>();
        for (int i = 0; i < …
Run Code Online (Sandbox Code Playgroud)

c# list

0
推荐指数
1
解决办法
190
查看次数

标签 统计

algorithm ×1

c# ×1

graph ×1

list ×1

primes ×1

python ×1