1-6章练习题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
15、已知一棵二叉树的先序序列为ABCD,中序序列为BCAD,则它的后序序列为_ _____。
16、在文本编辑程序中查找某一特定单词在文本中出现的位置,可以利用串的___ ________运算。
17、假设以行优先顺序将一个n阶的5对角矩阵压缩存储到一维数组Q中,则数组Q的大小至少为___ ___。
18、在含100个结点的完全二叉树中,叶子结点的个数为___________。
9、已知substr(s,i,len)函数的功能是返回串s中第i个字符开始长度为len的子串,strlen(s)函数的功能是返回串s的长度。
10、若s=”ABCDEFGHIJK”,t=”ABCD”,执行运算substr(s,strlen(t), strlen(t))后的返回值为______ ______。
5、某二叉树的先根遍历序列是ABDGCEFH;中根遍历序列是DGBAECHF;则其后根遍历序列是。
数组采用顺序存储方式表示是因为通常不对数组进行__ _______操作。
6.若二叉树中度为2的结点有n个,则度为0的结点个数为。
7.结点数为20的二叉树可能达到的最大高度为_________。
8、两个串相等的充分必要条件是两个串的长度相等且_________。
4、线性表的元素长度为4,LOC(a1)=1000,则LOC(a3)=。
5、链栈s在进行出栈操作时首先要判断。
6、在n个结点的顺序表中删除一个结点需平均移动个结点。
7、队列的修改是按_______的原则进行的;栈的修改是按的原则进行的。
8、在n个结点的顺序表中插入一个结点需平均移动个结点。
9、删除双向循环链表中*p的前驱结点(存在)应执行的语句是____ __。
18、画出下树的孩子链表的存储结构.
19、某二叉树的线索链表存储结构如图(b)Baidu Nhomakorabea示,其中p为指向根结点的指针,图(a)为结点结构。阅读下列算法,并回答问题:
(1)写出执行函数调用f(p)的输出结果;
(2)简述函数f的功能。
void f(BinThrTree t)
{
while(t)
{
printf(t->data);
11、.去除广义表LS=(a1,a2,a3,……,an)中第1个元素,由其余元素构成的广义表称为LS的_____ _______。
12、已知完全二叉树T的第5层只有7个结点,则该树共有_____ _______个叶子结点。
13、已知广义表LS为空表,则其深度为__ ____。
14、假设以行优先顺序存储三维数组A[5][6],其中元素A[0][0]的地址为1100,且每个元素占2个存储单元,则A[4][3]的地址是___ ___。
22、在一棵度为3的树中,度为2的结点个数是1,度为0的结点个数是6,则度为3的结点个数是____ ____。
23、设S1="good",S2=" ",S3="book",则S1,S2和S3依次联接后的结果是____________。
24、已知在一棵含有n个结点的树中,只有度为k的分支结点和度为0的叶子结点,则该树中含有的叶子结点的数目为____________。
25、已知两个4×5的稀疏矩阵的三元组表分别如下:
0
1
4
16
0
1
1
32
1
2
2
18
1
2
2
-22
2
3
4
-25
2
2
5
69
3
4
2
28
3
3
4
25
4
4
2
51
请画出这两个稀疏矩阵之和的三元组表。
26、已知树如下图所示:
(1)写出该树的后序序列;
(2)画出由该树转换得到的二叉树。
17、画出下图所示二叉树的中序线索链表的存储表示。
19、广义表LS=(a1,a2,a3,……,an)中第1个元素,称为LS的_____ _______。
20、已知完全二叉树T的第4层只有3个结点,则该树共有_____ _______个叶子结点。
21、假设一个6阶的下三角矩阵B按列优先顺序压缩存储在一维数组A中,其中A[0]存储矩阵的第一个元素b11,则A[14]存储的元素是________。
if(t->lchild)
t=t->lchild;
else
t=t->rchild;
}
}
14、已知在结点个数大于1的单循环链表中,指针p指向表中某个结点,则下列程序段执行结束时,指针q指向结点*p的___________结点。
q=p;
while(q->next!=p) q=q->next;
15、假设S和X分别表示进栈和出栈操作,由输入序列“ABC”得到输出序列“BCA”的操作序列为SSXSXX,则由“a*b+c/d”得到“ab*cd/+”的操作序列为_____ ____。
16、已知指针p指向单链表中某个结点,则语句p -> next =p -> next -> next的作用是__。
17、设计一个算法int count(LinkList *head,int m),计算带头结点的单链表中数据域data的值为m的结点个数。设单链表的头指针为head。
int count(LinkList *head,int m)
{
}
1、串S=″I□am□a□worker″(注:□为一个空格)的长度是_ ___。
2、假设一个10阶的下三角矩阵A按列优顺序压缩存储在一维数组C中,则C数组的大小应为__ ___。
3、在n个结点的线索二叉链表中,有___ __个线索指针。
4、任意一棵具有n个结点的二叉树,若它有m个叶子,则该二叉树上度数为1的结点数个。
10、栈下溢是指在__ _____时进行出栈操作。
11、在一个长度为n的循环链表中,删除其元素值为x的结点的时间复杂度为__ _。
12、如果入栈序列是1,3,5,…,97,99,且出栈序列的第一个元素为99,则出栈序列中第30个元素为_ _____。
13、数据的逻辑结构分为有四种,分别是集合结构、________、和。
1、若一个算法中的语句频度之和为T(n)=3720n+4nlogn,则算法的时间复杂度为_____。
2、在如图所示的链表中,若在指针p所指的结点之后插入数据域值相继为a和b的两个结点,则可用下列两个语句实现该操作,它们依次是__ _和__ __。
3、数据的存储结构可用四种基本的存储方法表示,它们分别是存储方式、存储方式、索引存方式和散列方式。
相关文档
最新文档