gpt4 book ai didi

list - 学习箱形图和指针图的资源

转载 作者:太空宇宙 更新时间:2023-11-03 18:49:43 27 4
gpt4 key购买 nike

我目前正在努力通过 Berkely's summer 2011 CS3L course并且正在努力理解方框图和指针图。如何构建它们以及如何解释它们。

提供的说明是 here .但是,我仍然没有“明白”。

我知道列表是对的组合,一对的 cdr 可能指向另一对。我也明白 cdr 指向的那对可能是另一个列表。我只是不明白如何在图表中将其全部绘制出来。

作为引用,这是我遇到的问题的示例:

(define cal 
(list (append (list (cons (list 1 2) (cons 3 '())))
(list (cons 4 (cons 5 '()))))
6
7))

给出类似上面的代码,我想画出方框和指针图,然后能够说出需要什么样的 car 和 cdr 组合才能获得列表中的任何给定数字。

同样,作为引用,下面是我应该能够想出的图表:

enter image description here

重申一下,我正在寻找的是可以更清楚地解释盒形图和指针图的构建的视频或文章。

预先感谢任何愿意为我指出正确方向的人。

最佳答案

[请注意,这个答案并不鼓励你作弊:如果你正在学习一门要求你能够绘制方框图和指针图的类(class),那么你应该能够做到这一点,而不是让程序为你做.但该程序可以帮助您学习。]

学习方框图和指针图工作原理的一个好方法是能够与知道如何绘制它们的程序对话。在很久以前的 Lisp 黄金时代,我们的 Lisp 机器上有很棒的对话界面,可以让图形和文本混合在一起,还有漂亮的图形绘制程序,可以从中轻松构建工具来做到这一点。使用此类工具,您可以根据需要构建各种结构,并让程序为您绘制图表,从而很好地掌握这些结构的工作原理。

嗯……事实证明 Lisp 的黄金时代现在已经到来。如果你使用 Racket (如果你还没有使用 Racket,你可以使用它)然后有一个非常棒的包叫做 sdraw这是做什么的。它没有与 Racket 发行版捆绑在一起,但要安装它,您可以使用 DrRacket 的包管理器或直接安装

raco pkg install --auto sdraw

这将安装它。现在您可以(在 DrRacket 窗口中,这在终端 session 中不起作用)只需与 Racket REPL 对话并让它为您绘制缺点树:

sdraw session

通过简单地与语言交互并让它为您绘制内容,您就可以很好地了解各种结构是如何组合在一起的。

关于list - 学习箱形图和指针图的资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57404403/

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