作者adrianshum (Alien)
看板Programming
标题Re: [问题] linked list& array
时间Tue Mar 1 10:24:16 2011
※ 引述《Lordaeron (Terry)》之铭言:
: ※ 引述《adrianshum (Alien)》之铭言:
: → Lordaeron:你这样只能叫用link来实作link 118.160.171.237 02/26 01:31
: → Lordaeron:Link是资料存放的方法, stack是处理资料 118.160.171.237 02/26 01:31
: → Lordaeron:的方式. 两个是不同的东西 118.160.171.237 02/26 01:32
: → adrianshum:这里要表达的就是如果把 Linked List 183.179.61.91 02/26 04:38
: → adrianshum:抽象化成一种 interface, 代表其 data 183.179.61.91 02/26 04:39
: → adrianshum:iteration 的方法,这里的 Linked List 183.179.61.91 02/26 04:39
: → adrianshum:就不再是一种资料存放的方法。这里和上 183.179.61.91 02/26 04:40
: → adrianshum:一篇要说的大概就是这种意思。实际上出 183.179.61.91 02/26 04:41
: → adrianshum:来的结果可能没有什麽价值可是重点是在 183.179.61.91 02/26 04:41
: → adrianshum:於抽象化的思考过程。 183.179.61.91 02/26 04:42
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^
: 这样子讲的意义就跟, CPU为PC 的要件, 哪可以用PC 当成CPU 吗?
: 所以你提出的方式: 我将很多PC 集合成一个cluster, 前面再多个介面.
: 例如用MPI, 则, 可以说,PC 就是这个Cluster 的CPU 了.
: 典型的文字游戏.
: ※ 编辑: Lordaeron 来自: 1.161.215.231 (02/28 21:17)
就说你没在留心别人在说什麽.
你可以把 array 或 linked list 理解成实作
的形式, *那完全没有问题*.
但 yauhh 的回答 (我的回文也是基於他的想法
说的) 着眼的不在这, 而是, 是不是可以把它的
操作抽象化.
从之前的例子, yauhh 把 array 的 indexed access,
和 linked list 的 next operation 看待成它们
的介面.
很多时候, 在进行抽象化 (e.g. extracting interface)
之後, 我们会把抽出来的 interface 再给一个更合适的
名称.
大家可以看到, yauhh 中 "array" 和 "linked list"
的 interfaces, 活脱脱就是 Java 的 List 和 GoF
DP 中的 Iterator 的刍型.
yauhh (和我亦然) 说的不是 Array 或 Linked List
*是* 那两个interface, 而是在引导一个初学者参与
一个抽象化的思考过程.
希望你这次看得懂别人在说什麽. 要是你仍然再玩那些
无谓的文字游戏, 我可不奉陪了.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.238.156.185