使用流寻找最佳方法 - 方案

发布于 2024-11-03 10:35:11 字数 384 浏览 4 评论 0原文

我对Scheme比较陌生,并且在流方面遇到了一些问题。我只知道如何制作自然数流,没有更复杂的。我想也许它们在这种情况下会有用。所以,基本上,我有这个矩阵:

[0 0 0 0 0 S 0 0] [0 0 0 0 x 0 x 0] [0 0 0 0 x 0 0 x] [0 0 0 x 0 0 0 x] [0 0 0 x 0 0 0 x] [0 0 xx 0 0 0 0] [0 0 D 0 0 0 0 0]

其中 x = 可访问路径 S = 来源 D = 目的地

我要做的就是在可到达的路径上一次仅水平、垂直和对角移动一格,从 S 到达 D。到目前为止,我只创建了一个位置列表,其中包含源位置、可访问路径和目的地位置。 有没有办法使用流来选择正确的路径?如果这对我来说太复杂而无法理解,您建议什么其他方法?

I'm relatively new to Scheme and I'm having a few problems with streams. I only know how to make a stream of natural numbers, nothing more complex. I thought maybe they'll be of use in this case. So, basically, I have this matrix:

[0 0 0 0 0 S 0 0]
[0 0 0 0 x 0 x 0]
[0 0 0 0 x 0 0 x]
[0 0 0 x 0 0 0 x]
[0 0 0 x 0 0 0 x]
[0 0 x x 0 0 0 0]
[0 0 D 0 0 0 0 0]

where x = accessible paths
S = source
D = destination

What I have to do is get from S to D by traveling only horizontally, vertically and diagonally one square at a time on the accessible paths. Until now, I've only created a list of positions that contains the source's position, the accessible paths and the destination's position.
Is there a way of choosing the correct path by using streams? And if that is too complex for me to understand, what other method do you suggest?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

摘星┃星的人 2024-11-10 10:35:11

我不认为流对理解这个问题有实质性贡献。你面临的是一个搜索问题——你正在寻找可能性空间中的一系列动作。我鼓励您查看 HtDP,第 28 节 介绍了一个非常相似的问题。

I don't think that streams contribute substantially to an understanding of this problem. What you have is a search problem--you're looking for a sequence of moves in a space of possibilities. I would encourage you to take a look at HtDP, section 28 for a look at a very similar problem.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文