![]() |
1
4
列表(通常至少,我想可能有一些我不知道的奇怪的边缘情况)直接存储为它们的值。因此,递归函数将专门生成
然而,有一个小问题,即您所实现的功能并不是特别有效。相反,我建议用这种稍微有点另类的方式来做:
基本上,问题是每次使用
实际上,由于您可能不想在函数之外使用预先提供的列表,因此我建议您改为这样做:
(请注意,我没有测试过这个,所以它可能不会完全工作)。如果你真的想预先提供一个开始清单,那么你可以坚持第一个清单。
另外,请记住,虽然列表通常适合顺序访问,但是对于随机访问来说,它们是很糟糕的。如果您需要对列表进行随机查找,那么我建议您使用
不过,我还要再强调一点:从全功能编程“纯粹主义”的角度来看,您的第一个实现可能并不完全是“功能性的”,但所涉及的唯一可变性都隐藏在函数内部。也就是说,您不会改变传递给函数的任何内容。从功能纯度的角度来看,这是非常好的,可能有利于性能。记住,F首先是功能性的,而不仅仅是狂热的功能性的;)
编辑:我想再加一件事:我不知道你
|
![]() |
2
2
|
|
Vilius Zem · 用subs替换Sympy错误 7 年前 |
![]() |
MastRofDsastR · 使用lambdas解释该方案程序的评估 7 年前 |
![]() |
user1700890 · 在tensorflow中访问隐式张量 7 年前 |
![]() |
John S. · Java|boolean不会重新评估/更新 9 年前 |