2013湖北省数据结构基础考资料

合集下载

湖北省计算机类专业人才培养合作联盟联合考试试卷(数据结构B卷)

湖北省计算机类专业人才培养合作联盟联合考试试卷(数据结构B卷)

注意事项:1.考生将姓名、学号等信息写在试卷相应位置;2.必须使用蓝(黑)色钢笔或签字笔在规定位置答题;3.注意字迹清楚,保持卷面整洁。

止。

二、填空题(每小题1分,共10分)1. 一个算法具备的5个特性分别是可行性、有穷性、______、输入和输出。

2. 在有n个元素的顺序表中的任意位置插入一个元素所需移动元素的平均次数为______。

3. 栈是一种具有______特性的线性表。

4. 无论是顺序队列还是链式队列,插入和删除运算的时间复杂度都是______。

5. 递归函数f(1)=1,f(n) = f(n-1) + n(n>1)的递归出口是______。

6. 完全二叉树中节点个数为n,则编号最大的分支节点的编号是______。

7. 对n个顶点的连通图来说,它的生成树一定有______边。

8. 采用哈希存储方法时,用于计算节点存储地址的是______。

9. 对二叉排序树进行______遍历,可以得到按关键字从小到大排列的节点顺序。

10.在排序过程中,不比较关键字大小的排序方法是______。

B-2 共13 页.Word 资料三、单向选择题 (每小题2分,共30分)1. 算法的时间复杂度与______有关。

A 、问题规模B 、计算机硬件性能C 、编译程序质量D 、程序设计语言2. 链表不具有的特点是______。

A 、可随机访问任一元素B 、插入删除不需要移动元素C 、不必事先估计存储空间D 、所需空间与线性表长度成正比3. 已知一个栈的进栈顺序是1,2,3,...,n , 其输出序列是P1, P2,..., Pn, 若P1=n ,则Pi 的值为______。

A 、iB 、n-iC 、n-i+1D 、不确定4. 设顺序循环队列中数组的下标是0~N-1,其头、尾指针分别为f (指向队头元素的前一个位置)和r (指向队尾元素),则其元素个数为______。

A 、r-fB 、r-f-1C 、(r-f)%N+1D 、(r-f+N)%N5. 将递归算法转换成对应的非递归算法时,通常需要使用______保存中间结果。

2013年武汉科技大学考研试题数据结构(C语言版)A卷和参考答案

2013年武汉科技大学考研试题数据结构(C语言版)A卷和参考答案

二O 一三年招收硕士研究生入学考试试题考试科目代码及科目名称: 856 数据结构(C 语言版)答题内容写在答题纸上,写在试卷或草稿纸上一律无效考完后试题随答题纸交回。

考试时间3小时,总分值 150 分。

姓名: 报考专业: 准考证号码:密封线内不要写题参考答案(A)一、选择题(10小题,每题2分,共20分)1. B2. C3. B4. D5. B6. B7. C8. A9. A 10. D二、填空题(10小题,每题2分,共20分)1. O(n)2. 运算或操作3. 33/11=34. 985. 66. 517. 空8. Head->next==NULL9. O(nlogn)10. 空或一个结点或单分支三、判断题(10小题,每题2分,共20分)1. ×2. √3. ×4. ×5. √6. √7. √8. ×9. √ 10. ×四、综合应用题(6小题,每题10分,共60分)1.关键路径:a1->a4->a8->a11->a12完成该工程所需最短时间:212.设具有n个结点的完全二叉树的深度为H由完全二叉树的定义可知:第i(1≤i≤H-1)层上的结点数将达到最大(2i-1),第H层上的结点数将≥2且≤2k-1∴1+2+……+2H-2+2≤n≤ 1+2+……+2H-2+ 2H-12H-1+1≤n≤ 2H-1 2H-1<n< 2HH-1<log2n<H∴ H=[ log2n ]3.4.(1) p=8(2) k=i*(i-1)/2+i+j-n-15.查找成功时的平均查找长度: (1*1+2*2+3*4+4*4)/11=3查找不成功时的平均查找长度: (4*3+8*4)/12=44/12=3.336.堆排序的初始堆(大根堆)关键字序列:96 63 78 25 57 11 44 堆排序1趟以后的关键字序列:78 63 44 25 57 11 96快速排序1趟以后的关键字序列:11 25 96 63 57 78 44快速排序2趟以后的关键字序列:11 25 44 63 57 78 96冒泡排序1趟以后的关键字序列:25 11 63 57 78 44 96五、算法设计与编程(3小题,每题10分,共30分)1.int digit(int n,int k){ if(n==0) return -1;else if(k==1) return n%10;else return digit(n/10,k-1); }int digit(int n,int k){ while(n){ if(k==1) return n%10;k--; n=n/10; }return -1;}2.void compare(int x, Node *L){int count=0, comp=0,status=0;Node *p, *t, *pre, *end,*work=NULL;p=L->next; pre=L; end=L;while(p){if(p->data<x) status=1;if(comp!=p->data&&status==0) { count++; comp=p->data; }if(status==0){if(p==L&&p->data%2==0) { t=p; L->next=p->next; free(t); p=L->next; }else if(p!=L&&p->data%2==0){ t=p; pre->next=p->next; free(t); p=pre->next; } else { pre=p; p=p->next; }end=pre;}if(status==1){ t=pre->next; pre->next=work; work=p; p=t; }}end->next=work;}3.typedef struct{BiTree t;int tag; //tag=0表示左子女被访问,tag=1表示右子女被访问}stack;void Search(BiTree bt,ElemType x){stack s[];top=0;while(bt!=null||top>0){while(bt!=null && bt->data!=x){ s[++top].t=bt; s[top].tag=0; bt=bt->lchild; }if(bt->data==x){printf(“所查结点的所有祖先结点的值为:\n”);for(i=1;i<=top;i++) printf(s[i].t->data);return;}while(top!=0 && s[top].tag==1) top--;if(top!=0) { s[top].tag=1; bt=s[top].t->rchild; }}}int Qiuzu(Node *Head){if (Head==null) return 0;if (Head ->data==x) return 1;if(Qiuzu(Head->Lchild)||Qiuzu(Head->Rchild)) {cout<<Head->date<<endl;return 1;}else return 0;}。

2013湖北省数据结构基础考试题库

2013湖北省数据结构基础考试题库

1、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a??11为第一个元素,其存储地址为1,每元素占1个地址空间,则a85的地址为( B )。

A)13 B)33 C)18 D)402、在一个具有n个单元的顺序栈中,假定以地址低端(即0单元)作为栈底,以top作为栈顶指针,当做出栈处理时,top变化为( C )。

A)top不变 B)top=0 C)top-- D)top++3、采用链结构存储线性表时,其地址( B )。

A)必须是连续的 B)连续不连续都可以C)部分地址必须是连续 D)必须是不连续的4、线索二叉树中某结点D,没有左孩子的条件是( B )。

A)D->Lchild=Null B) D->ltag=1C) D->Rchild=Null D) D->ltag=05、( C )在进行插入操作时,常产生假溢出现象。

A)顺序栈 B)循环队列C)顺序队列 D)链队列6、采用链结构存储线性表时,其地址( B )。

A)必须是连续的 B)连续不连续都可以C)部分地址必须是连续 D)必须是不连续的7、栈进行插入和删除操作的特点是( A )。

A)LIFO B)FIFOC)FCFS D)HPF8、在一棵度为3的树中,度为3的结点个数为2,度为2的结点个数为1,则度为0的结点个数为( C )。

A)4 B)5C)6 D)79、n个顶点的图的最小生成树必定( D ),是不正确的描述。

A)不唯一 B)权的总和唯一C)不含回路 D)有n条边10、设有一个栈,元素的进栈次序为A, B, C, D, E,下列是不可能的出栈序列是( C )。

A) A, B, C, D, EB) B, C, D, E, AC) E, A, B, C, DD) E, D, C, B, A11、某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( D )存储方式最节省运算时间。

A) 单链表 B) 仅有头指针的单循环链表 C) 双链表 D) 仅有尾指针的单循环链表。

2013年湖北省数据结构试题集(10套题并附带答案)考资料

2013年湖北省数据结构试题集(10套题并附带答案)考资料
C.树中两个权值最小的结点可能是兄弟结点
D.同一结点集构造的二叉树中,哈夫曼树的WPL最小
12、通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着 B 。
A.数据元素具有同一特点
B.不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致
C.每个数据元素都一样
A.单链表 B.静态链表 C.线性链表 D.顺序存储结构
5、非空的循环单链表head的尾结点(由p所指向)满足 C 。
A.p->next == NULL B.p == NULL
C.p->next ==head D.p == head
6、通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着 B 。
B. p一>next=HL;HL=p3
C. p一>next=Hl;p=HL;
D. p一>next=HL一>next;HL一>next=p
20、当一个作为实际传递的对象占用的存储空间较大并可能需要修改时,应最好把它说明为( )参数,以节省参数值的传输时间和存储参数的空间。
14、链表不具备的特点是 A 。
A.可随机访问任一结点 B.插入删除不需要移动元素
C.不必事先估计存储空间 D.所需空间与其长度成正比
15、算法分析的目的是 C ,算法分析的两个主要方面是 A 。
(1)A.找出数据结构的合理性 B.研究算法中的输入和输出的关系
44、下列关于哈夫曼树的叙述中,错误的是
A.用n个结点构造的哈夫曼树是唯一的
B.哈夫曼树中只有度为0或度为2的结点
C.树中两个权值最小的结点可能是兄弟结点
D.同一结点集构造的二叉树中,哈夫曼树的WPL最小

2014年湖北省数据结构试题集(10套题并附带答案)最新考试试题库(完整版)

2014年湖北省数据结构试题集(10套题并附带答案)最新考试试题库(完整版)
B.二维数组是其数据元素为线性表的线性表
C.栈的操作方式是先进先出
D.队列的操作方式是先进后出
26、在循环双链表的p所指的结点之前插入s所指结点的操作是 D 。
A.p->prior = s;s->next = p;p->prior->next = s;s->prior = p->prior
D.{102,60。89,93,55,24}
30、在一个长度为n(n>1)的单链表上,设有头和尾两个指针,执行 B 操作与链表的长度有关。
A.删除单链表中的第一个元素
B.删除单链表中的最后一个元素
C.在单链表第一个元素前插入一个新元素
D.在单链表最后一个元素后插入一个新元素
C.head->next ==head D head!=NULL
24、需要分配较大空间,插入和删除不需要移动元素的线性表,其存储结构是 B 。
A.单链表 B.静态链表 C.线性链表 D.顺序存储结构
25、在以下的叙述中,正确的是 B 。
A.线性表的顺序存储结构优于链表存储结构
39、下列选项中,符合堆定义的是
A.{102,24,55,60,89,93}
B.{24,89,55,60,93,102}
C.{102,93,55,60,89,24}
D.{102,60。89,93,55,24}
40、对于图1所示的二叉树,其后序序列为(C )。
A)ABDECFG B)DBEAFCG
B.p->prior = s;p->prior->next = s;s->next = p;s->prior = p->prior

2012-2013数据结构

2012-2013数据结构

浙江大学2012–2013学年秋学期《数据结构基础》课程期末考试试卷(A) 课程号: 211C0020_,开课学院:_计算机科学与技术_考试试卷:√A卷、B卷(请在选定项上打√)考试形式:√闭、开卷(请在选定项上打√),允许带____无___入场考试日期: 2012 年 11 月 15 日,考试时间: 120 分钟诚信考试,沉着应考,杜绝违纪。

考生姓名:学号:所属院系: _Answer SheetNOTE: Please write your answers on the answer sheet.注意:请将答案填写在答题纸上。

I. Please select the answer for the following problems. (20 points)(1) Which one of the following statements is true as N grows?a. For any x , N x grows faster than !Nb. 2)(log N grows faster than Nc. 2log N grows faster than 2)(log Nd. N grows faster than 2)(log N N(2) What is the time complexity of the following function that computes X N ?long int Pow (long int X, unsigned int N) {if (N == 0) return 1;if (N == 1) return X;if (IsEven(N)) /* IsEven(N) returns 1 if N is even, or 0 otherwise */return Pow(X, N / 2) * Pow (X, N / 2);else return Pow(X * X, N / 2) * X;} a. O(N ) b. O(N log ) c. O(N N log ) d. O(N )(3) Suppose that N integers are pushed into and popped out of a stack. The input sequence is 1, 2, …, N and the output sequence is p 1, p 2, …, p N . If p 2 = 2, then p i (i>2) must be .a. ib. i+2c. N - id. cannot be determined(4) What is the major difference among lists, stacks, and queues? a. Lists use pointers, and stacks and queues use arraysb. Stacks and queues are lists with insertion/deletion constraintsc. Lists and queues can be implemented using circularly linked lists, but stacks cannotd. Stacks and queues are linear structures while lists are not(5) For an in-order threaded binary tree, if the pre-order and in-order traversal sequences are ABCDEF and CBAEDF respectively ,which pair nodes ’ right links are both threads?a. A and Bb. B and Dc. C and Dd. B and E(6) If N keys are hashed into the same slot, then to find these N keys, the minimum number of probes with linear probing is .a. N-1b. Nc. N(N+1)/2d. N+1(7) If an undirected graph with N vertices and E edges is represented by an adjacency matrix. How many zero elements are there in the matrix? a. E b. 2E c. N 2-E d. N 2-2E(8) If a directed graph is stored by an upper-triangular adjacency matrix –- that is, all the elements below the main diagonal are zero. Then its topological order .a. exists and must be uniqueb. exists but may not be uniquec. does not existd. cannot be determined(9)Sort a sequence of nine integers {4, 8, 3, 7, 9, 2, 10, 6, 5} by insertion sort. When 2 is moved to the first position, the number 8 must be at position (start from 1) .a. 4b. 5c. 6d. 7(10)Let T be a tree of N nodes created by union-by-height without path compression, then the depth of the tree isa. N/2b. O(logN)c. O(N2)d. O(1)II. Given the function descriptions of the following two (pseudo-code) programs, please fill in the blank lines. (21 points)(1)Bubble sort is a simple sorting algorithm. Suppose we have a list of integers and want to sort them in ascending order. Bubble sort repeatedly scans the list from the head to the tail, and swaps two adjacent numbers if they are in the wrong order. Please complete the following program to implement bubble sort. (12 points)struct node{int value;struct node *next;/* some other fields */}struct node BubbleSort (struct node *h){/* h is the head pointer of the list with a dummy head node */struct node *p, *q;int flag_swap;if (!h->next) return h;do{flag_swap = 0;p = h;while (p->next->next){if (① ){flag_swap++;q = p->next;② ;③ ;④ ;}else p = p->next;}} while (flag_swap > 0);return h;}(2)The function is to perform Find as a Union/Find operation with path compression. (9 points)SetType Find ( ElementType X, DisjSet S ){ElementType root, trail, lead;for ( root = X; S[ root ] > 0; ① );for ( trail = X; trail != root; ② ) {lead = S[ trail ] ;③ ;}return root ;}III. Please write or draw your answers for the following problems on the answer sheet. (44 points)(1) A sorting algorithm is stable if for any keys K i = K j for i < j,the corresponding records R i precedes R j in the sorted list.(a)Is Heap Sort stable? Please give a proof if your answer is“YES”, else please provide a counter example. (4 points)(b)Is Quick Sort stable? Please give a proof if your answer is“YES”, else please provide a counter example. (4 points)(2)Given the adjacency list representation of a directed graph.Suppose V1 is always the first vertex being visited. Please list(a)the depth-first search sequence; (5 points)(b)the breath-first search sequence; (5 points) and(c)the strongly connected components. (3 points)(3) A binary search tree is said to be of “type A”if all the keysalong the path from the root to any leaf node are in sorted order(either ascending or descending).(a)Given four keys {1, 2, 3, 4}, please draw all the possiblebinary search trees of type A. (4 points)(b)In general, given N keys {1, 2, …, N}, how many differentbinary search trees of type A can be constructed? (3 points)(4)Given a hash table of size 13 and the hash function H(key) = keymod 13. Assume that quadratic probing is used to solve collisions.Please fill in the hash table with input numbers {2, 15, 3, 16, 6,29, 24, 28}. (4 points)(5)Given eight keys {1, 2, …, 8}. Please do the following:(a)construct a complete binary tree which is also a binary searchtree; (5 points) and(b)construct a min-heap out of the array which stores thecomplete binary tree obtained from (a). Use BuildHeap with asequence of percolate-down’s. (4 points)(c)Observe the keys on each level of the min-heap obtained from(b). Is there a pattern of ordering? Is this true for moregeneral cases? (3 points)IV. Given a tree represented by left-child-right-sibling structure, please describe an algorithm that counts the number of leaf nodes on every level.(15 points)。

02331数据结构2013年10月份历年真题附答案

02331数据结构2013年10月份历年真题附答案

绝密★考试结束前全国2013年10月高等教育自学考试数据结构试题课程代码:02331请考生按规定用笔将所有试题的答案涂、写在答题纸上。

选择题部分注意事项:1. 答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。

2. 每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。

如需改动,用橡皮擦干净后,再选涂其他答案标号。

不能答在试题卷上。

一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。

错涂、多涂或未涂均无分。

1.算法的时间复杂度表征的是A.算法的可读性B.算法的难易程度C.执行算法所耗费的时间D.执行算法所耗费的存储空间2.对需要频繁插入和删除结点的线性表,适合的存储方式是A.顺序储存B.链式存储C.索引存储D.散列存储3.在头指针为head的循环链表中,判断指针变量P指向尾结点的条件是A.p->next->next==head B.p->next==headC.p->next->next==NULL D.p->next==NULL4.迪杰斯特拉(Dijkstra)算法的功能是A.求图中某顶点到其他顶点的最短路径B.求图中所有顶点之间的最短路径C.求图的最小生成树D.求图的拓扑排序序列5.若栈的进栈序列为1,2,3,4,5,则经过出入栈操作不可能...获得的出栈序列是A.4,5,3,2,1 B.4,3,5,1,2C.1,2,3,4,5 D.5,4,3,2,16.A是7×4的二维数组,按行优先方式顺序存储,元素A[0][0]的存储地址为1 000,若每个元素占2个字节,则元素A[3][3]的存储地址为A.1015 B.1016C.1028 D.10307.深度为4的完全二叉树的结点数至少为A.4 B.8C.13 D.158.若采用邻接矩阵A存储有向图G,则结点k的入度等于A中A.结点k对应行元素之和B.结点k对应列元素之和C.结点k对应行和列元素之和D.非零元素之和9.无向图G的邻接矩阵一定是A.对称矩阵B.对角矩阵C.三角矩阵D.单位矩阵10.下列关于有向带权图G的叙述中,错误..的是A.图G的任何一棵生成树都不含有回路B.图G生成树所含的边数等于顶点数减1C.图G含有回路时无法得到拓扑序列D.图G的最小生成树总是唯一的11.在下列排序算法中,关键字比较次数与初始排列次序无关的是A.冒泡排序B.希尔排序C.直接插入排序D.直接选择排序1 2.对下图进行拓扑排序,可以得到的拓扑序列是A.a b c d e B.b a c d eC.b c a d e D.a b d c e13.下列线性表中,能使用二分查找的是A.顺序存储(2,12,5,6,9,3,89,34,25) B.链式存储(2,12,5,6,9,3,89,34,25) C.顺序存储(2,3,5,6,9,12,25,34,89) D.链式存储(2,3,5,6,9,12,25,34,89) 14.在下列查找方法中,平均查找长度与结点数量无直接关系的是A.顺序查找B.分块查找C.散列查找D.基于B树的查找15.下列排序算法中,时间复杂度为O(nlog2 n)的算法是A.快速排序B.冒泡排序C.直接选择排序D.直接插入排序非选择题部分注意事项:用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。

2013年湖北省基础数据摘要

2013年湖北省基础数据摘要
int LeafKlevel(BiTree bt, int k) //求二叉树bt 的第k(k>1) 层上叶子结点个数
{if(bt==null || k<1) return(0);
BiTree p=bt,Q[]; //Q是队列,元素是二叉树结点指针,容量足够大
int front=0,rear=1,leaf=0; //front 和rear是队头和队尾指针, leaf是叶子结点数
1、4、 void LinkList_reverse(Linklist &L)
//链表的就地逆置;为简化算法,假设表长大于2
{
p=L->next;q=p->next;s=q->next;p->next=NULL;
while(s->next)
{
//用“破圈法”求解带权连通无向图的一棵最小代价生成树。
{typedef struct {int i,j,w}node; //设顶点信息就是顶点编号,权是整型数
node edge[];
scanf( "%d%d",&e,&n) ; //输入边数和顶点数。
for (i=1;i<=e;i++) //输入e条边:顶点,权值。
if(front==last) {level++; //二叉树同层最右结点已处理,层数增1
last=rear; } //last移到指向下层最右一元素
if(level>k) return (leaf); //层数大于k 后退出运行
int front=0,rear=1,leaf=0; //front 和rear是队头和队尾指针, leaf是叶子结点数

2015湖北省数据结构最新考试试题库(完整版)

2015湖北省数据结构最新考试试题库(完整版)
13、线性表的链接实现有利于( A )运算。
A)插入 B)读元素
C)查找 D)定位
14、某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( D )存储方式最节省运算时间。
A) 单链表 B) 仅有头指针的单循环链表
A)front=front->next; B) rear=rear->next;
C) rear=front->next; D) front=rear->next ;
1、在一个单链表中,已知q结点是p结点的前趋结点,若在q和p之间插入s结点,则须执行( A ) 。
A)q->next=s; s->next=p; B)s->next=p->next; p->next=s;
C)p->next=s->next; s->next=p D)p->next=s; s->next=q;
C)空表 D)((a,b),(c,d))
10、如果结点A有3个兄弟,而且B为A的双亲,则B的度为( B )。
A)3 B)4 C)5 D)1
11、倘若在对串的插入、删除运算中,期望运算速度最快,则应采用( C )。
26、串的逻辑结构与( D )的逻辑结构不同。
A)线性表 B)栈
C)队列 D)树
27、在一个单链表中,已知q结点是p结点的前趋结点,若在q和p之间插入s结点,则须执行( A ) 。
A)q->next=s; s->next=p; B)s->next=p->next; p->next=s;
C) 双链表 D) 仅有尾指针的单循环链表

2013年湖北省数据整理加强

2013年湖北省数据整理加强

1、二叉树的层次遍历序列的第一个结点是二叉树的根。

实际上,层次遍历序列中的每个结点都是“局部根”。

确定根后,到二叉树的中序序列中,查到该结点,该结点将二叉树分为“左根右”三部分。

若左、右子树均有,则层次序列根结点的后面应是左右子树的根;若中序序列中只有左子树或只有右子树,则在层次序列的根结点后也只有左子树的根或右子树的根。

这样,定义一个全局变量指针R,指向层次序列待处理元素。

算法中先处理根结点,将根结点和左右子女的信息入队列。

然后,在队列不空的条件下,循环处理二叉树的结点。

队列中元素的数据结构定义如下:typedef struct{ int lvl; //层次序列指针,总是指向当前“根结点”在层次序列中的位置int l,h; //中序序列的下上界int f; //层次序列中当前“根结点”的双亲结点的指针int lr; // 1—双亲的左子树 2—双亲的右子树}qnode;BiTree Creat(datatype in[],level[],int n)//由二叉树的层次序列level[n]和中序序列in[n]生成二叉树。

n是二叉树的结点数{if (n<1) {printf(“参数错误\n”); exit(0);}qnode s,Q[]; //Q是元素为qnode类型的队列,容量足够大init(Q); int R=0; //R是层次序列指针,指向当前待处理的结点BiTree p=(BiTree)malloc(sizeof(BiNode)); //生成根结点p->data=level[0]; p->lchild=null; p->rchild=null; //填写该结点数据for (i=0; i<n; i++) //在中序序列中查找根结点,然后,左右子女信息入队列if (in[i]==level[0]) break;if (i==0) //根结点无左子树,遍历序列的1—n-1是右子树{p->lchild=null;s.lvl=++R; s.l=i+1; s.h=n-1; s.f=p; s.lr=2; enqueue(Q,s);}else if (i==n-1) //根结点无右子树,遍历序列的1—n-1是左子树{p->rchild=null;s.lvl=++R; s.l=1; s.h=i-1; s.f=p; s.lr=1; enqueue(Q,s);}else //根结点有左子树和右子树{s.lvl=++R; s.l=0; s.h=i-1; s.f=p; s.lr=1;enqueue(Q,s);//左子树有关信息入队列s.lvl=++R; s.l=i+1;s.h=n-1;s.f=p; s.lr=2;enqueue(Q,s);//右子树有关信息入队列}while (!empty(Q)) //当队列不空,进行循环,构造二叉树的左右子树{ s=delqueue(Q); father=s.f;for (i=s.l; i<=s.h; i++)if (in[i]==level[s.lvl]) break;p=(bitreptr)malloc(sizeof(binode)); //申请结点空间p->data=level[s.lvl]; p->lchild=null; p->rchild=null; //填写该结点数据if (s.lr==1) father->lchild=p;else father->rchild=p; //让双亲的子女指针指向该结点if (i==s.l){p->lchild=null; //处理无左子女s.lvl=++R; s.l=i+1; s.f=p; s.lr=2; enqueue(Q,s);}else if (i==s.h){p->rchild=null; //处理无右子女s.lvl=++R; s.h=i-1; s.f=p; s.lr=1; enqueue(Q,s);}else{s.lvl=++R; s.h=i-1; s.f=p; s.lr=1; enqueue(Q,s);//左子树有关信息入队列s.lvl=++R; s.l=i+1; s.f=p; s.lr=2; enqueue(Q,s); //右子树有关信息入队列}}//结束while (!empty(Q))return(p);}//算法结束2、因为后序遍历栈中保留当前结点的祖先的信息,用一变量保存栈的最高栈顶指针,每当退栈时,栈顶指针高于保存最高栈顶指针的值时,则将该栈倒入辅助栈中,辅助栈始终保存最长路径长度上的结点,直至后序遍历完毕,则辅助栈中内容即为所求。

2014湖北省数据结构最新考试试题库(完整版)

2014湖北省数据结构最新考试试题库(完整版)
C)建立在相应逻辑结构和存储结构上的算法 D)包括以上三个方面
35、与无向图相关的术语有( C )。
A)强连通图 B)入度
C)路径 D)弧
36、n个顶点的强连通图至少有( A )条边。
A)n B)n+1 C)n-1 D)n(n-1)
C)查找 D)定位
3、二叉树第i(i≥1)层上至多有( C )结点。
A)2i B)2i C)2i-1 D)2i-1
4、在一个具有n个单元的顺序栈中,假定以地址低端(即0单元)作为栈底,以top作为栈顶指针,当做出栈处理时,top变化为( C )。
C)队列 D)树
27、( C )在进行插入操作时,常产生假溢出现象。
A)顺序栈 B)循环队列
C)顺序队列 D)链队列
28、队列的操作的原则是( A )。
A)先进先出 B) 后进先出
B)只有一部分,存放结点值
C)只有一部分,存储表示结点间关系的指针
D)分两部分,一部分存放结点值,另一部分存放结点所占单元数
39、设给定问题的规模为变量n,解决该问题的算法所需时间为Tn=O(f(n)),Tn表示式中记号O表示( A )。
A)一个数量级别 B)一个平均值
A)直接选择排序 B)直接插入排序
C)快速排序 D)起泡排序
12、n个顶点的图的最小生成树必定( D ),是不正确的描述。
A)不唯一 B)权的总和唯一
C)不含回路 D)有n条边
37、n个顶点的图的最小生成树必定( D ),是不正确的描述。
A)不唯一 B)权的总和唯一
C)不含回路 D)有n条边
38、链式存储的存储结构所占存储空间( A )。

真题_2013年_数据结构

真题_2013年_数据结构

二、综合应用题:41~47小题,共70分。
41.(13分)参考答案 (2)参考算法: int Majority(int A[ ], int n) { int *C; C=new int [n]; for (int i=0; i<n; i++) C[i]=0; for (i=0; i<n; i++) C[A[i]] ++; for (i=0; i<n; i++) if (C[i]>n/2) return i; //找到了主元素 return -1; //没有找到主元素 }
1.已知两个长度分别为m和n的升序链表,若将它们合并为一个 长度为m+n的降序链表,则最坏情况下的时间复杂度是 A.O(n) B.O(m*n) C.O(min(m,n)) D.O(max(m,n))
参考答案: D
2.一个栈的入栈序列是1,2,3,...,n,其出栈序列是p1,p2,p3,...,pn。 若p2=3,则p3可能取值的个数是 A.n-3 B.n-2 C.n-1 D.不确定
11. 对给定的关键字序列110,119,007,911, 114,120,122进行基数排序,则第2趟分配收 集后得到的关键字序列是 A. 007,110,119,114,911,120,122 B. 007,110,119,114,911,122,120 C. 007,110,911,114,119,120,122 D. 110,120,911,122,114,007,1题:41~47小题,共70分。
二、综合应用题:41~47小题,共70分。
41.(13分)参考答案 (1)给出算法的基本设计思想。 利用计数排序的思想,先求出原序列中每个元素的出现次数 并保存在另一计数数组中 然后检查计数数组中每个元素的值,返回值大于n/2的计数数 组值。否则返回-1 (2)根据设计思想,采用C或C++或Java语言描述算法,关键 之处给出注释。 (3)说明你所设计算法的时间复杂度和空间复杂度 T(n)=O(n) S(n)=O(n)

02331数据结构2013年1 月份历年真题附答案

02331数据结构2013年1 月份历年真题附答案

2013年1月高等教育自学考试全国统一命题考试数据结构试题课程代码:02331考生答题注意事项:1.本卷所有试卷必须在答题卡上作答。

答在试卷和草稿纸上的无效。

2.第一部分为选择题。

必须对应试卷上的题号使用2B铅笔将“答题卡”的相应代码涂黑。

3.第二部分为非选择题。

必须注明大、小题号,使用0.5毫米黑色字迹笔作答。

4.合理安排答题空间,超出答题区域无效。

选择题部分一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。

错涂、多涂或未涂均无分。

1.数据的逻辑结构可以分为A.动态结构和静态结构 B.顺序结构和链式结构C.线性结构和非线性结构 D.简单结构和构造结构2.线性表是一个有限序列,组成线性表的基本单位是A.数据项 B.数据元素C.数据域 D.字符3.栈中有a、b和c三个元素,a是栈底元素,c是栈顶元素,元素d等待进栈,则不可..能.的出栈序列是A.dcba B.cbdaC.cadb D.cdba4.稀疏矩阵的三元组表是A.顺序存储结构 B.链式存储结构C.索引存储结构 D.散列表存储结构5.已知广义表G,head(G)与tail(G)的深度均为6,则G的深度是A.5 B.6C.7 D.86.下列编码集合中,属于前缀编码的一组是A.{11,10,001,101,0001}B.{00,010,0110,1000}C.{11,01,001,0101,0001}D.{0,10,110,1011}7.如题7图所示二叉树的中序序列为A.ACDBB.DCBAC.CDBAD.ABCD题7图8.有向图中所有顶点入度之和与所有顶点出度之和的比是A.1/2 B.1C.2 D.49.含有n个顶点和e条边的有向图的邻接矩阵中,零元素的个数是A.eB.2eC.n2-2eD.n2-e10.n个顶点的无向连通图,其生成树的边数为A.n-lB.nC.n+lD.nlogn11.用自底向上的冒泡排序方法对序列(8,13,26,55,29,44)从大到小排序,第一趟排序需进行交换的次数为A.2 B.3C.4 D.512.对序列(8,13,26,55,29,44)从小到大进行基数排序,第一趟排序的结果是A.(13,44,55,26,8,29)B.(13,26,55,44,8,29)C.(8,13,26,29,44,55)D.(29,26,8,44,55,13)13.采用分块查找时,要求数据A.块内有序 B.分块有序C.分块无序 D.每块中数据个数必须相同14.下列关于散列函数的说法正确的是A.散列函数越复杂越好B.散列函数越简单越好C.用除余法构造的散列函数是最好的D.在冲突尽可能少的情况下,散列函数越简单越好15.下列关于m阶B树的叙述中,错误..的是A.每个结点至多有m棵子树B.每个结点至多有m-1个关键字 C .所有的叶结点均在同一层上 D.根结点至少有/2m ⎡⎤⎢⎥棵子树非选择题部分注意事项:用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。

考研数据结构常考知识点

考研数据结构常考知识点

考研数据结构常考知识点一、知识概述《线性表》①基本定义:线性表就是数据像一条线似的排开的结构。

就好比班级里同学们站成一排,每个同学就是一个数据元素,前后顺序是明确的。

②重要程度:在数据结构中非常重要,是好多其他复杂结构的基础。

很多东西都是基于线性表来构建、理解的。

③前置知识:需要对变量、基本数据类型这些有了解。

像你得知道整数、字符这些基本的东西,就像盖楼之前得知道砖头是啥样的。

④应用价值:在存储数据顺序的时候非常有用。

比如图书馆按编号存书,每一本书就像线性表的一个元素。

《栈和队列》①基本定义:栈就像一个桶,东西只能从一头进出,先进后出。

而队列呢,像排队买东西,从一头进,另一头出,先进先出。

②重要程度:也是数据结构里常见的保存数据的方式,在程序运行中存储一些临时数据很有用。

③前置知识:线性表的知识,因为栈和队列可以看作是特殊的线性表。

④应用价值:在操作系统里任务调度可以用到队列,栈在表达式求值的时候可以用,像计算器计算式子的时候在后台可能就是用栈的方式去处理父子运算顺序的。

二、知识体系①知识图谱:线性表在数据结构里是基础中的基础,栈和队列是线性表的衍生。

②关联知识:树和图的一些遍历算法可能会用到栈或者队列辅助实现,比如树的深度优先遍历用栈方便,广度优先遍历用队列合适。

③重难点分析:线性表理解不难,但是运用起来要熟练有点难。

栈和队列重点是搞清楚它们进出数据的规则,难点是在不同问题里选择合适的结构。

④考点分析:线性表会考操作、存储结构之类的,栈和队列会考查入栈出栈、入队出队的操作顺序,还会结合一些应用题考查。

三、详细讲解【线性表- 理论概念类】①概念辨析:线性表就是n个数据元素的有限序列。

这里面每个元素都是单个数据,而且有顺序。

②特征分析:顺序性,每个元素都有固定的顺序位置。

还有有限性,元素个数是有限的。

③分类说明:可以分为顺序表,就是元素存在连续的存储单元里;还有链表,元素分布在不同的存储单元,通过指针联系起来。

2012年湖北省数据结构试题及答案一点通

2012年湖北省数据结构试题及答案一点通

40、通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着 B 。
A.数据元素具有同一特点
B.不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致
C.每个数据元素都一样
D.数据元素所包含的数据项的个数要相等
41、在决定选取何种存储结构时,一般不考虑 A 。
A.各结点的值如何 B.结点个数的多少
C.对数据有哪些运算 D.所用的编程语言实现这种结构是否方便。
42、在存储数据时,通常不仅要存储各数据元素的值,而且还要存储 C 。
A.数据的处理方法 B.数据元素的类型
C.数据元素之间的关系 D.数据的存储方法
46、在数据结构中,与所使用的计算机无关的是数据的 A 结构。
A.逻辑 B.存储 C.逻辑和存储 D.物理
47、有向图采用邻接矩阵存储,某一行中非零元素的个数等于
A.对应顶点v的度
B.对应顶点v的出度
C.对应顶点v的入度
D.依附于对应顶点v的边数
C.{102,93,55,60,89,24}
D.{102,60。89,93,55,24}
9、6个顶点的强连通图中,含有的边数至少是
A.4 B.5 C.6 D.7
10、通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着 B 。
A.数据元素具有同一特点
B.不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致
C.每个数据元素都一样
D.数据元素所包含的数据项的个数要相等
39、广义表A=(x,((y),((a)),A))的深度是
A.2 B.3 C.4 D.∞
D.队列的操作方式是先进后出

2013湖北省公务员考试复习资料最新考试试题库

2013湖北省公务员考试复习资料最新考试试题库

1、在因特网上,域名各部分之间用____作为分隔符A、点B、逗号C、冒号D、分号2、计算机当前正在运行的程序和数据主要存放在____中。

A、CPUB、微处理器C、主存储器D、键盘3、在网页制作中,我们经常用下列____办法进行页面布局。

A、文字B、表格C、表单D、图片4、在微机系统中,最基本的输入输出模块BIOS存放在____A\RAM中 B、ROM中C、硬盘中D、寄存器中5、广域网和局域网是按照____来分的。

A、网络使用者B、信息交换方式C、网络连接距离D、传输控制规程6、下列部件中,不属于计算机主机内的是____A、CPUB、主板C、内存条D、键盘7、在描述信息传输中bps表示的是____。

A、每秒传输的字节数B、每秒传输的指令数C、每秒传输的字数D、每秒传输的位数8、组成计算机系统的两大部分是____A、系统软件和应用软件B、硬件系统和软件系统C、操作系统和网络系统D、计算技术和通信技术9、十进制数89转换成二进制数是____。

A、1101101B、1011001C、1100101D、100110110、在Windows中,当桌面上已经打开多个窗口时,____。

A、可以有多个活动窗口B、只有一个活动窗口C、没有确定的活动的窗口D、没有一个是活动的窗口11、下列哪一项的任务是将计算机外部的信息送入计算机____A、输入设备B、输出设备C、显示器D、电源线12、____是上档键,可以用于辅助输入。

A、ShiftB、CtrlC、AltD、Tab13、网页的文件格式一般为____。

A、HTMLB、DOCC、TXTD、HTTP14、WWW是什么的缩写____。

A、Wide Web World B.World Web wide C.Wed World Wide D.World Wide Web15、代表政府机构的网络名是____。

A、GovB、EduC、ComD、Net16、计算机网络技术包含的两个主要技术是计算机技术和____。

2012湖北省数据结构考资料

2012湖北省数据结构考资料

1、采用链结构存储线性表时,其地址( B )。

A)必须是连续的 B)连续不连续都可以C)部分地址必须是连续 D)必须是不连续的2、已知栈的最大容量为4。

若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( C )。

A) 5,4,3,2,1,6 B) 2,3,5,6,1,4C) 3,2,5,4,1,6 D) 1,4,6,5,2,33、在数据结构中,从逻辑上可以把数据结构分为( C )。

A)动态结构和静态结构 B)紧凑结构和非紧凑结构C)线性结构和非线性结构 D)内部结构和外部结构4、在数据结构中,从逻辑上可以把数据结构分为( C )。

A)动态结构和静态结构 B)紧凑结构和非紧凑结构C)线性结构和非线性结构 D)内部结构和外部结构5、若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( D )存储方式最节省时间。

A)顺序表B)双链表C)带头结点的双循环链表D)单循环链表6、有一个有序表{1,4,6,10,18,35,42,53,67,71,78,84,92,99}。

当用二分查找法查找键值为84的结点时,经( B )比较后查找成功。

A) 4 B)3 C)2 D)127、队列的操作的原则是( A )。

A)先进先出 B) 后进先出C) 只能进行插入 D) 只能进行删除8、n个顶点,e条边的有向图的邻接矩阵中非零元素有( C )个。

A)n B)2e C)e D) n+e9、对待排序的元素序列进行划分,将其分为左、右两个子序列,再对两个子序列施加同样的排序操作,直到子序列为空或只剩一个元素为止。

这样的排序方法是( A )。

A)直接选择排序 B)直接插入排序C)快速排序 D)起泡排序10、n个顶点的强连通图至少有( A )条边。

A)n B)n+1 C)n-1 D)n(n-1)11、若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点的个数是( B )。

13级《数据结构》期中试卷(打印)

13级《数据结构》期中试卷(打印)
10.队列和栈的特征分别是()。
A.先进先出,先进后出;B.先进先出,先进先出;
C.先进后出,先Biblioteka 先出;D.先进后出,先进后出.11.有6个元素按6,5,4,3,2,1的顺序进栈,问下列哪一个不是合法的出栈序列( )。
A.5,4,3,6,1,2;B. 4,5,3,1,2,6;C.3,4,6,5,2,1;D. 2,3,4,1,5,6.
}
}
2.已知有如下定义
typedef struct LNode {
int data;
struct LNode *next;}*LinkList, LNode ;
则下列算法的功能是
ListList Demo(LinkList L)
{
ListNode *Q,*P;
if (L&&L->next)
{
Q=L;
2.数据元素及其关系在计算机存储器内的表示,称为数据的。
3.设顺序表第1个元素的存储地址是2000,每个元素占4个字节,则第41个元素的存储地址是。
4.线性表中的每个结点最多有________前驱和____________后继。
5.在有n个结点的单链表中,要删除指针p所指结点,需要找到它的。
6.栈是限制仅在表一端进行插入和删除运算的线性表,通常将这一端称为。
Push(S,y); x=Pop(S);
Push(S,’E’); Push(S,x);
x=Pop(S); Push(S,’H’);
while(!StackEmpty(S)){
y=Pop(S); putchar(y);
}
putchar(x);
得分
五、算法设计题(共25分)
1.用顺序表实现:有10本图书,每本图书的数据有:书号,价格;设计算法input( )从键盘上输入10本图书的数据;设计算法average( )计算10本书的平均价格并输出。(14分)
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( D )存储方式最节省时间。

A)顺序表B)双链表C)带头结点的双循环链表 D)单循环链表
2、在数据结构中,从逻辑上可以把数据结构分为( C )。

A)动态结构和静态结构 B)紧凑结构和非紧凑结构
C)线性结构和非线性结构 D)内部结构和外部结构
3、设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为( A )。

A)p->next=p->next->next; B) p=p->next;
C)p=p->next->next; D) p->next=p;
4、用一维数组A进行顺序存储时,若起始地址为loc(A1),元素长度为c,则A的第i个数组单元在存放地址loc(Ai),等于( B )。

A)loc(A1)+i*c B)loc(A1)+(i-1)*c
C)loc(A1)+i*c+1 D)loc(A1)+(i+1)*c
5、某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( D )存储方式最节省运算时间。

A) 单链表 B) 仅有头指针的单循环链表
C) 双链表 D) 仅有尾指针的单循环链表
6、线索二叉树中某结点D,没有左孩子的条件是( B )。

A)D->Lchild=Null B) D->ltag=1
C) D->Rchild=Null D) D->ltag=0
7、下列各种数据结构中属于线性结构的有( A )。

A)栈 B) 二叉树
C) 广义表 D) 图
8、有一个有序表{1,4,6,10,18,35,42,53,67,71,78,84,92,99}。

当用二分查找法查找键值为84的结点时,经( B )比较后查找成功。

A) 4 B)3 C)2 D)12
9、下面程序段的时间复杂度是( A )。

s =0;
for( i =0; i<n; i++)
for(j=0;j<n;j++)
s +=B[i][j];
sum = s ;
A) O(n2) B) O(n)
C) O(m*n) D)O(1)
10、二叉树第i(i≥1)层上至多有( C )结点。

A)2i B)2i C)2i-1 D)2i-1
11、在一个链队列中,假定front和rear分别为队首和队尾指针,则插入一个结点的操作为( B )。

A)front=front->next; B) rear=rear->next;
C) rear=front->next; D) front=rear->next ;
12、链式存储的存储结构所占存储空间( A )。

A)分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针
B)只有一部分,存放结点值
C)只有一部分,存储表示结点间关系的指针
D)分两部分,一部分存放结点值,另一部分存放结点所占单元数
13、下列序列中,执行第一趟快速排序后得到的序列是( A )。

A)[d,a,e,d,b]f[h,g] B) [c,e,a,d]f[h,g,b]
C) [g,a,e,c,b]f[d,h] D) [a,b,c,d,]f[e,g,h]
14、设给定问题的规模为变量n,解决该问题的算法所需时间为Tn=O(f(n)),Tn表示式中记号O表示( A )。

A)一个数量级别 B)一个平均值
C)一个最大值 D)一个均方值
15、在一个具有n个单元的顺序栈中,假定以地址低端(即0单元)作为栈底,以top作为栈顶指针,当做出栈处理时,top变化为( C )。

A)top不变 B)top=0 C)top-- D)top++
16、如果结点A有3个兄弟,而且B为A的双亲,则B的度为( B )。

A)3 B)4 C)5 D)1。

相关文档
最新文档