下列描述中,正确的是【 】
A、线性链表是线性表的链式存储结构
B、栈与队列是非线性结构
C、双向链表是非线性结构
D、只有根结点的二叉树是线性结构
下列描述中,正确的是【 】
A、线性链表是线性表的链式存储结构
B、栈与队列是非线性结构
C、双向链表是非线性结构
D、只有根结点的二叉树是线性结构
A
【解析】
根据数据结构中各数据元素之间前后关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。
如果一个非空的数据结构满足下列三个条件:
① 有且只有一个头结点,它没有前驱;
② 有且只有一个尾结点,它没有后继;
③ 其它的结点有且只有一个前驱,同时有且只有一个后继。
称该数据结构为线性结构,又称线性表。
所以线性表、栈与队列、线性链表都是线性结构,而二叉树是非线性结构。
某二叉树中度为2的结点有18个,则该二叉树中有__________个叶子结点。
设栈的输入序列是(1,2,3,4),则【 】不可能是其出栈序列。
栈的输入序列为1,2,3,...,n,输出序列为a1,a2,a3,...,an,若ai=n(1≤i≤n),则有 ak>ak+1>an。
设栈的输入序列为1,2,3,...,n,输出序列为a1,a2,a3,...,an,若存在1≤k≤n使得 ak=n,则当k≤i≤n时,ai 为【 】
假设有两个按元素值递增有序排列的线性表A和B,均以带头结点的单链表作为存储结构,编写算法将A表和B表归并成一个按元素值递减有序排列的线性表C,并要求利用原表(A表和B表)的结点空间存放表C。
试写出在双向链表da中的插入操作算法,算法中插入位置的获取可直接引入getnodep(da,i),其中参数da为双向链表,i是要插入的数据,要求算法中含有双向链表da的结点结构描述。
将长度为n的单链表接在长度为m的单链表之后的算法时间复杂度为__________。
线性表采用链表存储时,结点和结点内部的存储空间可以是不连续的。【 】
在含有n个元素的顺序表中,算法时间复杂度为O(1)的操作是【 】
线性表选用顺序存储结构表示的适用场合是____________________。
假设线性表的长度为n,且采用顺序存储结构存储。当在线性表的任何位置上插入一个数据元素的概率相同时,插入一个数据元素需要移动元素的平均个数为【 】。