大数据结构题目及问题详解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
思考题
一、填空题:(20分,每空1分)
1、数据的基本单位是数据元素,最小单位是 s数据项。
2、 x=91; n=100;
while(n>0)
{if (x>100)
{ x=x-10; n=n-1;
}
else x=x+1;
}
上述算法中语句x=x+1的执行次数T(n)= O(N^3) 。
3、已知二维数组A[21][11]采用行序为主方式存储,每个元素占4个存
储单元,并且A[0][0]的存储地址为1016,则A[10][5]的存储地址是。
4、在进出规则上,队列的特点是,堆栈的特点是。
5、深度为5(根层次为1)的二叉树最多有个结点;第4层最多有
个结点。
6、在长度为n的顺序表(即顺序存储结构的线性表)中插入一个元素,需要平均移动
个元素。
7、在无向图中, 若对于任意一对顶点v i和v j, 都存在 , 则称此图是连通图。
8、设有一个10阶的对称矩阵A,采用压缩存储方式,以行为主存储,a00为第一个元素,其存储地址为1,每个元素占1个地址空间,则a75的地址为。
9、线性表的两种常用存储结构有存储结构和存储结构。
10、当增量d为1时,该趟希尔排序与排序基本一致。
11、数据结构是研究数据的,和算法。
12、常用图的存储结构有:邻接矩阵,邻接表,
十字链表,邻接多重表;
13、顺序表的插入算法
int Insert(elemtype List[],int *num,int i, elemtype x) {int j;
if(i<0| | i>*num+1)
{printf(“\n i值不合法 !”);
return 0;
}
for (j=*num;j>=i;j--)
; /*数据元素依次后移*/
List[ i]=x; (*num)++;
return 1;
}
1在单链表中设置头结点的作用是___ 简化操作_____________________________________。
2顺序存储结构使线性表中逻辑上相邻的数据元素在物理位置上也相邻。因此,这种表便于
访问,
3设输入元素的顺序为1,2,3,4,5,要在栈S的输出端得到43521,则应进行栈的基本运算表示应为:Push(S,1),Push(S,2),Push(S,3),Push(S,4),Pop(S),________________ ,Pop(S),Pop(S),Pop(S)。
4由下标0开始且元素个数为n的一维数组实现循环队列时,为实现下标变量m加1后在该数组的有效下标范围内循环,可采用的表达式是m________。
5对行下标由1到50、列下标由1到80的二维数组a,若该数组的起始地址为2000且每个元素占2个存储单元,并以行为主序顺序存储,则元素a[45][68]的存储地址为__ ___;
若以列为主序顺序存储,则元素a[45][68]的存储地址为___ ___。
6设F是由T1、T2、T3三棵树组成的森林,与F对应得二叉树为B。已知T1、T2、T3的结点
数分别为n1、n2和n3,则二叉树B的左子树中有_____结点,二叉树右子树中有__ _
个结点。
设n0为哈夫曼树叶子结点的数目,则该哈夫曼树共有__ __个结点。
7具有10个顶点的无向图,边的总数最多为_____。
8分块查找中,若索引表对各块内均采用顺序查找,有900个元素的线性表若分成25块,其平均查找长度为____ _。
9若一个待散列存储的线性表长度为n,用于散列的散列表长度为m,则装填因子α为__ __。
10在堆排序和快速排序中,若初始记录接近正序或反序,则选用____,若初始记录无序,则最好用____。
11从一个无序序列建立一个堆的方法是:首先将待排序的所有关键字分放到一棵
___________的各个结点中,然后从i= 的结点k i开始,逐步把k i-1,k i-2,…,k1为根的
子树排成堆,直到以k1为根的树排成堆,就完成了建堆的过程。
12算法的重要特性有有穷性、确定性、可行性、输入和输出。
二、单选题:(每题1分,共10分)
1、对于一个头结点为head的带头结点的单链表,判定该表为空表的条件()
A. head= =NULL;
B. head->next= =NULL;
C. head->next= = head;
D. head!=NULL
2、下述排序算法中,稳定的()
A. 直接选择排序
B. 直接插入排序
C. 快速排序
D. 堆排序
3、具有线性结构的数据结构是()
A. 树
B. 图
C. 栈和队列
D. 以
上都不是
4、评价一个算法时间性能的主要标准是( )
A. 算法易于调试
B. 算法易于理解
C. 算法的稳定性和正确性
D. 算法的时间复杂度
5、若用冒泡排序对关键字序列{18,16,14,12,10,8}进行
从小到大的排序,所需进行的关键字比较总次数是
( )
A. 10
B. 15
C. 21
D. 34
6、对稀疏矩阵进行压缩是为了()
A. 便于进行矩阵运算
B. 便于输入和输出
C. 节省存储空间
D. 降低运算的时间复杂度
7、设以数组A[m]存放循环队列的元素,其头指针、尾指针分别为front
和rear,则当前队列中的元素个数为()
A. (rear -front + m)%m !!!!!!!
B. rear-front+1
C. (front - rear + m)%m
D. (rear-front)%m
8、已知二叉树如图所示,则其顺序存储结构为()
9、在有n个叶子结点的哈夫曼树中,其结点总数为()
A. 不确定
B. 2n
C. 2n+1
D. 2n-1
10、一个有n个顶点的无向图最多有()条边。