首页 软件设计师正文

根据其定义,一棵完全二叉树除了最后一层外,其余层的节点数都是满的,最后一层的节点也必须自左至右排列,例如图(a)是高度为 3 的满二叉树,图(b)是完全二叉树,图(c)不是完全二叉树。设 L 为广义表,将 head(L)定义为取非空广义表的第一个元素,tail(L)定义为取非空广义表除第一个元素外剩余元素构成的广义表。若广义表 L=((x,y,z),a,(u,t,w)),则从 L 中取出原子项 y

根据其定义,一棵完全二叉树除了最后一层外,其余层的节点数都是满的,最后一层的节点也必须自左至右排列,例如图(a)是高度为 3 的满二叉树,图(b)是完全二叉树,图(c)不是完全二叉树。设 L 为广义表,将 head(L)定义为取非空广义表的第一个元素,tail(L)定义为取非空广义表除第一个元素外剩余素构成的广义表。若广义表 L=((x,y,z),a,(u,t,w)),则从 L 中取出原子项 y的运算是()。(2009年上半年软件设计师上午基础知识真题解析)
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://scpro.cn/v/62d71e6eb82411ee.html

相关文章

最近发表

好文推荐