gpt4 book ai didi

scheme - 生成百万随机元素列表

转载 作者:行者123 更新时间:2023-12-03 18:27:56 25 4
gpt4 key购买 nike

如何在方案中有效地生成百万随机元素的列表?以下代码以 10 万本身达到最大递归深度。

(unfold (lambda(x)(= x 1000000)) (lambda(x)(random 1000)) (lambda(x)(+ x 1)) 0)

最佳答案

这实际上取决于您使用的系统,但这里有一种常见的方法,可以在简单的方案中做到这一点:

(let loop ([n 1000000] [r '()])
(if (zero? n)
r
(loop (- n 1) (cons (random 1000) r))))

关于按原样运行此代码的一个注意事项:如果您只是将它输入到 REPL 中,它将导致打印结果列表,并且这通常会涉及使用比列表所容纳的内存多得多的内存。所以最好做类似的事情
(define l ...same...)

还有许多其他工具可以在不同程度上方便地使用。 unfold是其中之一,另一个是 for可以在 PLT Scheme 中找到的循环:
(for/list ([i (in-range 1000000)]) (random 1000))

关于scheme - 生成百万随机元素列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2437717/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com