【发布时间】:2012-10-08 06:49:41
【问题描述】:
我想在 Mathematica 中创建一个模块,如果第一个列表 (L1) 在第二个列表 (L2) 中,则返回 true,假设 L2 的长度大于 L1 的长度。 我是这样做的,问题是总是返回 False 我不知道为什么。 编辑:我已经解决了一个问题:我写了“if”而不是“If”。现在我得到一个无限循环。
isSegment[L1_List, L2_List] := Module[{i, j}, For[i = 1, i + Length[L1] - 1 <= Length[L2],
For[j = 1, j <= Length[L1],
If[L2[[i + j - 1]] != L1[[j]], Break;];
j++;
];
If[j == Length[L1] + 1,
Return[ True];];
i++; ]; Return [False]; ]
【问题讨论】:
标签: list wolfram-mathematica segment