设 L 为广义表,将 head(L)定义为取非空广义表的第一个元素,tail(L

考试题库2022-08-02  51

问题 设 L 为广义表,将 head(L)定义为取非空广义表的第一个元素,tail(L)定义为取非空广义表除第一个元素外剩余元素构成的广义表。若广义表L=((x,y,z),a,(u,t,w)),则从L中取出原子项y的运算是(  )。A.head(tail(tail(L)))B.tail(head(head(L))C.head(tail(head(L)))D.tail(tail(head(L)))

选项 A.head(tail(tail(L)))
B.tail(head(head(L))
C.head(tail(head(L)))
D.tail(tail(head(L)))

答案 C

解析 本题考查数据结构方面的基础知识。
    广义表是函数式语言中使用的一种数据结构。根据广义表取表头和取表尾的定义,对于广义表L=((x,y,z),a,(u,t,w)),运算head(L)=(x,y,z),而tail(L)=(a,(u,t,w)),因此原子项y应从head(L)中取,对(x,y,z)取表头可得到原子项x,因此从L中取出原子项y的运算为head(tail(head(L)))。
转载请注明原文地址:https://tihaiku.com/congyezige/2409986.html

最新回复(0)