主题:广义表的计算题(easy版)
youlingsxcn
[专家分:290] 发布于 2006-06-03 15:03:00
(5)head(tail(((a,b),(c,d))))=(c,d);
(6)tail(head(((a,b),(c,d))))=(b).
5题明白 先是tail(....)得出 (c,d) 然后head(...) 结果是(c,d)
那么6题 显示head(...)得出(a,b) 然后tail 应该得出()才对么
怎么结果是(b)
如果六题结果是从head(c,d) 计算
是不是5题的结果 应该是(c)才对。。
迷糊 .....
回复列表 (共5个回复)
沙发
wwsq5573 [专家分:250] 发布于 2006-06-03 16:25:00
第(6)题答案没错,先是head(((a,b),(c,d)))取表头元素的答案是(a,b),
然后是对(a,b)取表尾操作tail((a,b)),注意,
广义表的表尾定义是:取出表中第一个元素后,
其余元素够成的表是它的表尾,显然,这里表(a,b)取出表头元素a后,
只剩下元素b,元素b够成的表是(b),
这就是tail(head(((a,b),(c,d))))这结果
这两题答案都没错,这类问题很容易搞错,弄得人脑子糊里糊涂,不过对概念清楚了就不会出现这种问题了
板凳
youlingsxcn [专家分:290] 发布于 2006-06-03 23:51:00
这么说
第五题head(tail(((a,b),(c,d))))=(c,d);
先tail(....) 取出(c,d)
再head(....),最后结果应该是(c)
才对么?
3 楼
wwsq5573 [专家分:250] 发布于 2006-06-05 13:05:00
第五题先tail(...)是((c,d)) 注意是两个括号
再head(((c,d)))是(c,d)
请细看 头 跟 尾 的定义
4 楼
jplearn [专家分:30] 发布于 2006-12-27 00:06:00
迷糊!
5 楼
hzj1216000 [专家分:40] 发布于 2006-12-28 12:59:00
迷糊!
我来回复