Wolfram mathematica 使用模块内的For循环迭代置换时出现的问题

Wolfram mathematica 使用模块内的For循环迭代置换时出现的问题,wolfram-mathematica,Wolfram Mathematica,我正试图编写一些代码,通过创建所有可能的顶点排列并绘制每个顶点的子图,从随机图中提取给定大小的所有不同子图。但是,当我尝试使用For循环来完成此操作时,它只绘制第一个子图。我对Mathematica不是很熟悉,所以我不确定问题在哪里 创建随机图和排列列表的各个组件都起作用,只有在循环中放在一起时,它才能起作用 模块创建具有n个点和边概率p的随机图 G[n_, p_] := Module[{A, M}, A = Table[If[i < j, If[RandomReal[] < p,

我正试图编写一些代码,通过创建所有可能的顶点排列并绘制每个顶点的子图,从随机图中提取给定大小的所有不同子图。但是,当我尝试使用For循环来完成此操作时,它只绘制第一个子图。我对Mathematica不是很熟悉,所以我不确定问题在哪里

创建随机图和排列列表的各个组件都起作用,只有在循环中放在一起时,它才能起作用

模块创建具有n个点和边概率p的随机图

G[n_, p_] := Module[{A, M}, A = Table[If[i < j, If[RandomReal[] < p, 1, 0], 0], {i, 1, n}, {j, 1, n}];
  M = A + Transpose[A];
  Return[AdjacencyGraph[M]];]
给出通过示例测试看到的输出。

试试这个

Subcount[n_, p_, d_] := Module[{i, ex, per, sub1},
  ex = G[n, p];
  per = Permutations[Range[n], {d}];
  Table[{i,{HighlightGraph[ex, Subgraph[ex, Part[per, i]]]}},{i,Length[per]}]];
Subcount[5, 0.4, 3]

这应该会显示所有60个图。

谢谢,这就像我想要的一样,只是一个快速的跟进。如何修改它,使其只将所有子图存储在一个列表中(不显示它们),因为我想检查子图的一些属性,并希望能够单独调用每个子图,从而完美地工作,我只是决定改变它,这样它将只显示子图顶点,因为这些都是我所需要的,谢谢你,我显然需要更多地使用Mathematica。
Subcount[5, 0.4, 3]
Subcount[n_, p_, d_] := Module[{i, ex, per, sub1},
  ex = G[n, p];
  per = Permutations[Range[n], {d}];
  Table[{i,{HighlightGraph[ex, Subgraph[ex, Part[per, i]]]}},{i,Length[per]}]];
Subcount[5, 0.4, 3]