- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
华北计算技术研究所2006年专业课试题
参考答案
填空题(15分)
数据结构是相互之间存在一种或多种特定关系的 数据元素 的集合。通常有下列四种基本结构: 集合 、 线性结构 、 树状结构 和 图状结构(或网状结构) 。
在顺序表中插入或删除一个元素,需要平均移动 表中一半(或n/2个) 元素,具体移动的元素个数与表长和该元素在表中的位置有关。
0 个字符的串称为空串,它的长度为 0 。
矩阵压缩存储的基本思想是: 值相同 的多个元素只分配一个存储空间, 零元素 不分配空间。
深度为k的二叉树至多有 2k-1 个结点,至少有 k 个结点。
图的深度优先有哪些信誉好的足球投注网站遍历类似于树的 先根 遍历;图的广度优先有哪些信誉好的足球投注网站遍历类似于树的 按层次 遍历。
选择题(20分)
时间复杂性最好,即执行时间最短的是: B
(A) O(n) (B)O(log2n) (C)O(nlog2n) (D)O(n2)
具有6个顶点的无向图至少有 D 条边才能确保是一个连通图。
(A) 15 (B)7 (C)6 (D)5
在所有排序方法中,关键字比较的次数与记录的初始排列次序无关的是:D
(A)希尔排序 (B)起泡排序 (C)插入排序 (D)选择排序
若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,再加入两个元素后,rear和front的值分别为: C 。
1和5 (B)2和4 (C)4和2 (D)5和1
设栈的长度为3,入栈序列为A、B、C、D、E、F,不可能产生的出栈序列是: D 。
(A) A,B,C,D,E,F (B) B,A,D,C,F,E
(C) C,B,A,F,E,D (D) D,C,B,A,F,E
判断题。(10分)
请判断下列说法的对错。
数据元素是数据的最小单位。 错
串的三种存储表示方法为定长顺序存储表示、堆分配存储表示和块链存储表示。 对
一个稀疏矩阵的转置矩阵仍然是稀疏矩阵。 对
树状结构中,度为0的结点称为树根。 错
完全二叉树不一定是满二叉树,但满二叉树一定是完全二叉树。对
根据下列要求分别编写算法。(20分)
设计算法,判断一个算术表达式的圆括号是否正确配对。
参考答案:
#include string.h
#include “stack.h”
Int PairBracket(char *S)
{
//检查表达式中括号是否配对
int i;
SeqStack T;//定义一个栈
InitStack (T);
for(i=0;istrlen(S);i++)
{
if ( S[i]==’(‘ ) Push(T,S[i]); //遇‘(’时进栈
if ( S[i]==’)’ ) Pop(T); //遇‘)’时出栈
}
Return !EmptyStack(T); //由栈空否返回正确配对与否
}
已知一棵完全二叉树存于顺序表sa中,sa.elem[sa.last]中存放各结点的数据元素。编写算法由此顺序存储结构建立该二叉树的二叉链表。
参考答案:
Status CreateBitree_SqList(Bitree T,SpList sa) //根据顺序存储结构建立二叉链表
{
Bitree ptr[sa.last+1];//该数组存储与sa中各结点对应的树指针
if(!sa.last)
{
T=NULL;
return;
}
ptr[1]=(BTNode*)malloc(sizeof(BTNode));
ptr[1]-data=sa.elem[1];
T=ptr[1];
for(i=2;i=sa.last;i++)
{
if(!sa.elem[i] return ERROR;
ptr[i]=(BTNode*)malloc(sizeof(BTNode));
ptr[i]-data=sa.elem[i];
j=i/2;
if(i-j*2) ptr[j]-rchild=ptr[i]; //I是j的右孩子
else ptr[j]-lchild=ptr[i]; //I是j的左孩子
}
return OK;
}
回答问题。(20分)
设有上三角矩阵(aij)nxn,将其上三角元素逐行存于数组B[m]中(m充分大),使得B[k]=aij且k=f1(i)+f2(j)+c。试推导出函数f1,f2和常数c(要求f1和f2中不含常数项)。
参考答案:
则得:
写出下图中所示的二叉树的先序序列、中序序列和后序序列。
1
2
4
5
7
3
6
8
9
参考答案:
前序:124735689
中序:472153869
后序:
文档评论(0)