川大20春《数据结构》第一次作业
数据结构作业题及参考答案
东北农业大学网络教育学院数据结构作业题(一)一、选择题(每题2分,共20分)1.在一个长度为n的顺序表的任一位置插入一个新元素的渐进时间复杂度为()。
A、O(n)B、O (n/2)C、O (1)D、O (n2)2.带头结点的单链表first为空的判定条件是()。
A、first == NULL;B、first->link == NULL;C、first->link == first;D、first != NULL;3.在一棵树中,()没有前驱结点。
A、分支结点B、叶结点C、树根结点D、空结点4.在有向图中每个顶点的度等于该顶点的()。
A、入度B、出度C、入度与出度之和D、入度与出度之差5.对于长度为9的有序顺序表,若采用折半搜索,在等概率情况下搜索成功的平均搜索长度为()的值除以9。
A、20B、18C、25D、226.下列程序段的时间复杂度为()。
s=0;for(i=1;i<n;i++)for(j=1;j<n;j++)s+=i*j;A、O (1)B、O (n)C、O (2n)D、O (n2)7.栈是一种操作受限的线性结构,其操作的主要特征是()。
A、先进先出B、后进先出C、进优于出D、出优于进8.假设以数组A[n]存放循环队列的元素,其头、尾指针分别为front和rear。
若设定尾指针指向队列中的队尾元素,头指针指向队列中队头元素的前一个位置,则当前存于队列中的元素个数为()。
A、(rear-front-1)%nB、(rear-front)%nC、(front-rear+1)%nD、(rear-front+n)%n9.高度为5的完全二叉树中含有的结点数至少为()。
A、16B、17C、31D、3210.如图所示有向图的一个拓扑序列是( )A、ABCDEFB、FCBEADC、FEDCBAD、DAEBCF二、填空题(每空1分,共20分)1.n (n﹥0) 个顶点的无向图最多有条边,最少有条边。
数据结构第一次作业答案.
假设有两个按元素值递增次序排列的线性表,均以单链表形式存储。
请编写算法将这两个单链表归并为一个按元素值递增次序排列的单链表。
【解答】算法的基本设计思想:因为两链表已按元素值递增次序排列,将其合并是,均从第一个结点起进行比较,将小的结点链入链表中,同时后移链表工作指针。
该问题要求结果链表按元素值递减次序排列,故新链表的建立,应该采用头插法(也就是书本上讲的那种从链表中插入元素值的方法。
比较结束后,可能会有一个链非空,此时用头插法将剩下的结点依次插入新链表中即可。
算法实现如下: void MergeList(ListList &La,LinkList &Lb {LinkList r,pa=La->next,pb=Lb->next; //pa和pb分别是链表La 和//Lb的工作指针La->next=NULL;while(pa&&pb //当两链表均不为空时if(pa->data<=pb->data {r=pa->next; //将pa的后继结点暂存于rpa->next=La->next;La->next=pa; //将pa结点链于结果表中,同时逆//置(头插法pa=r; //恢复pa为当前待比较结点}else {r=pb->next; //将pb的后继结点暂存于rpb->next=La->next;La->next=pb; //将pb结点链于结果表中,同时逆置pb=r;}If(pa pb=pa; //通常情况下会剩下一个链表非空,处理剩//下的部分while(pb{r=pb->next;pb->next=La->next;La->next=pb;pb=r;}free(Lb;}选择题:1、D 2、B1、栈的特点是先进后出,由于进栈和出栈操作是可以穿插着进行的。
当第i个元素第一个出栈时,则i之前的元素可以依次排在i之后出栈,但剩余的元素可以在此时进栈并且也会排在i之前的元素出栈,所以第就j个出栈的元素是不确定的。
[东北师范大学]《数据结构》20春在线作业1-1
【奥鹏】-[东北师范大学]数据结构20春在线作业1试卷总分:100 得分:100第1题,数据结构中的任一数据元素至多只有一个前驱和一个后继,该数据结构是 ( )A、线性表B、广义表C、树形结构D、图结构正确答案:A第2题,插入、删除只能在同一端进行的线性表,称为 ( )。
A、队列B、循环队列C、栈D、循环栈正确答案:C第3题,任何一棵二叉树的叶结点在前序、中序和后序遍历序列中的相对次序 ( )。
A、不发生改变B、发生改变C、稍有改变D、不能确定正确答案:A第4题,在k叉树中,度为0的结点称为 ( )。
A、根B、叶C、祖先D、子孙正确答案:B第5题,在下列排序算法中,哪一个算法的时间复杂度与记录初始排列无关 ()。
A、直接插入排序B、冒泡排序C、快速排序D、直接选择排序正确答案:D第6题,下面哪些方法可以判断出一个有向图是否有环(回路)? ()A、广(宽)度优先遍历B、拓扑排序C、求最短路径D、求关键路径正确答案:B第7题,串是一种特殊的线性表,其特殊性体现在 ( )。
A、可以顺序存储B、数据元素是一个字符C、可以链接存储D、数据元素可以是多个字符正确答案:B第8题,head指向的带表头结点的单链表为空的判定条件是 ( )。
A、head = = NULLB、head-next = = headC、head ! = NULLD、head-next = = NULL正确答案:D第9题,二叉树在线索化后,仍不能有效求解的问题是 ( )。
A、前序线索二叉树中求前序后继B、中序线索二叉树中求中序前驱C、中序线索二叉树中求中序后继D、后序线索二叉树中求后序后继正确答案:D第10题,算法分析的两个主要方面是 ( )。
A、正确性与健壮性B、可读性与可用性C、时间复杂度与空间复杂度D、数据复杂性与程序复杂性正确答案:C第11题,下述二叉树中,哪一种满足性质:从任一结点出发到根的路径上所经过的结点序列按其关键字有序。
最新奥鹏东北师范大学数据结构20春在线作业1-参考答案
D循环栈
【答案】:C栈|
3.任何一棵二叉树的叶结点在前序、中序和后序遍历序列中的相对次序( )。
【选项】:
A不发生改变
B发生改变
C稍有改变
D不能确定
【答案】:A
4.在k叉树中,度为0的结点称为( )。
【选项】:
A根
B叶
C祖先
D子孙
【答案】:B叶|
5.在下列排序算法中,哪一个算法的时间复杂度与记录初始排列无关()。
【选项】:
A空或只有一个结点
B高度等于其结点数
C任一结点无左子女
D任一结点无右子女
【答案】:B
14. n个结点的线索二叉树上含有的线索数为( )。
【选项】:
A n-1
B n
C n +1
D 2n
【答案】:C
15.广义表(( a , b , c , d ) )的表头是()。
【选项】:
A a
B ( )
C ( a , b , c , d )
东北师范大学
东师远程教育
数据结构20春在线作业1
参考答案
试读一页
数据结构20春在线作业1
1个后继,该数据结构是( )
【选项】:
A线性表
B广义表
C树形结构
D图结构
【答案】:A线性表|
2.插入、删除只能在同一端进行的线性表,称为( )。
【选项】:
A队列
B循环队列
C可以链接存储
D数据元素可以是多个字符
【答案】:B
8. head指向的带表头结点的单链表为空的判定条件是( )。
【选项】:
A head = = NULL
B head->next = = head
数据结构(本科)-2020.07国家开放大学2020年春季学期期末统一考试试题及答案
试卷代号:1 252国家开放大学2 0 2 0年春季学期期末统一考试数据结构(本)试题2020年7月一.单项选择题(每小题3分,共30分)1.设主串为“DBcCDABcdEFdBc”,以下模式串能与主串成功匹配的是()。
A.dBcB.BCdC.DBCD.Abc2.顺序表所具备的特点之一是()。
A.可以随机访问任一结点B.不用占用连续的存储空间C.插入删除操作不需要移动元素D.必须要有头指针3.在一个链队中,假设f和r分别为队头和队尾指针,p指向一个已生成的结点,现要为该结点的数据域赋值e,并使结点入队的运算为p->data=e;p->next一NULL;和()。
A. f->next=p; f=pB.r->next=p;r=pC. p->next=r;r=pD.p->next=f; f=p4.在一个头指针为head的带头结点的单向循环链表中,p指向尾结点,要使该链表成为不带头结点的单向链表,可执行()。
A. head= head->next;p=NULLB.head—head- >next; P- >next= headC.head- >next= p- >nextD. head- head->next;p->next=NULL5。
元素212,214,216,218按顺序依次进栈,则该栈的不可能输出序列是()(进栈出栈可以交替进行)。
A.212, 214, 216, 218B.216, 214, 212,218C.214 ,212, 218, 216D.218, 216, 212, 2146.设有一个25阶的对称矩阵A(第一个元素为ai,,,采用压缩存储的方式,将其下三角部分以行序为主序存储到一维数组B中(数组下标从1开始),则矩阵中元素a4,s在一维数组B 中的下标是()。
A.10B.9C.7D.87.在一棵二叉树中,编号为19的结点的双亲结点的顺序编号为()。
数据结构(本)形考作业1参考答案
数据结构(本)形考作业指导作业1参考答案一、单项选择题1.C 2.D 3.B 4.C 5.D 6.C 7.B 8.C 9.A 10.B11.C 12.D 13.C 14.A 15.B 16.C 17.C 18.B 19.B 20.D二、填空题1.n-i+1 2.n-i3.集合线性结构树形结构图状结构4.物理结构存储结构5.线性结构非线性结构6.有穷性确定性可形性有零个或多个输入有一个或多个输出7.图状结构8.树形结构9.线性结构10.n-1 O(n) 11.s->next=p->next; 12.head13.q->next=p->next; 14.p->next=head; 15.单链表16.顺序存储链式存储17.存储结构18.两个直接后继直接前驱尾结点头结点19.头结点的指针指向第一个结点的指针20.链式链表三、问答题1.简述数据的逻辑结构和存储结构的区别与联系,它们如何影响算法的设计与实现?答:若用结点表示某个数据元素,则结点与结点之间的逻辑关系就称为数据的逻辑结构。
数据在计算机中的存储表示称为数据的存储结构。
可见,数据的逻辑结构是反映数据之间的固有关系,而数据的存储结构是数据在计算机中的存储表示。
尽管因采用的存储结构不同,逻辑上相邻的结点,其物理地址未必相同,但可通过结点的内部信息,找到其相邻的结点,从而保留了逻辑结构的特点。
采用的存储结构不同,对数据的操作在灵活性,算法复杂度等方面差别较大。
2.解释顺序存储结构和链式存储结构的特点,并比较顺序存储结构和链式存储结构的优缺点。
答:顺序结构存储时,相邻数据元素的存放地址也相邻,即逻辑结构和存储结构是统一的,,要求内存中存储单元的地址必须是连续的。
优点:一般情况下,存储密度大,存储空间利用率高。
缺点:(1)在做插入和删除操作时,需移动大量元素;(2)由于难以估计,必须预先分配较大的空间,往往使存储空间不能得到充分利用;(3)表的容量难以扩充。
数据结构第一次作业及答案.--线性表
题目1、下列图 1 单链表执行第一次作业 ------------R->data=P->next->data线性表语句后,P->next->data值为A. 5B. 7C. 2D. 3题目 2 、在顺序表中,只要知道( ),就可在相同时间内求出任一结点的存储地址。
A. 向量大小B. 基地址和结点大小C. 结点大小D. 基地址题目 3 、非空的循环单链表head 的尾节点(由r 所指向)满足 ( )A. r->next=NULLB. r->next=headC. r=NULLD. r=head题目 4 、设线性表(的地址为a1,a2,a3···an )按顺序存储,且每个元素占有m 个存储单元,则元素aiA. LOC(a1) +i m×,其中LOC(a1) 表示元素a1 的地址B. 元素 ai 的地址无法计算C. LOC(a1) + (i-1) m×,D. LOC(a1) +(i题目 5、在(- 2) ×m)运算中,使用顺序表比链表好。
A. 根据元素值查找C. 根据序号查找题目 6 、在一个单链表中,若B. 插入D. 删除P 所指结点不是最后结点,在P 之后插入S 所指结点A. PB. S→ next=S;S →next=P→ next=P → next;P=SC. S → next=P → next;P → next=SD. S → next=P;P → next=S题目 7 、在双向循环链表的 *p 结点之后插入 *s 结点的操作是 A. s->prior=p; s->next=p->next; p->next=s; p->next->prior=s;B. s->prior=p; s->next=p->next; p->next->prior=s; p->next=s;C. p->next=s; s->prior=p; p->next->prior=s; s->next=p->nextD. p->next=s; p->next->prior=s; s->prior=p; s->next=p->next题目 8 、单链表表示的整数数列如下图,值 P->next->next->data 为 :A. 47B. 93C. 19D. 64题目9、在一个具有n 个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是( )。
《数据结构》四川大学_期终复习试题+答案
四川大学“精品课程”计算机科学与技术专业(本科)《数据结构与算法分析》课程考试说明与模拟试卷第一部分考试说明数据结构与算法分析》是计算机科学与技术专业统设的一门重要的必修专业基础课,它主要研究数据的各种逻辑结构和在计算机中的存储结构,还研究对数据进行的插入、查找、删除、排序、遍历等基本运算或操作以及这些运算在各种存储结构上具体实现的算法。
由于本课程的主教材采用C++语言描述算法,期末卷面考试也采用C++语言描述,因而要求在做平时作业和上机实验操作时用C++开发工具(如:Visual C++或C++ Builder或Borland C++)。
下面按照主教材中各章次序给出每章的具体复习要求,以便同学们更好地进行期末复习。
第一章绪论重点掌握的内容:1. 数据结构的二元组表示,对应的图形表示,序偶和边之间的对应关系。
2. 集合结构、线性结构、树结构和图结构的特点。
3. 抽象数据类型的定义和表示方法。
4. 一维和二维数组中元素的按下标和按地址的访问方式以及相互转换,元素地址和数组地址的计算,元素占用存储空间大小和数组占用存储空间大小的计算。
5. 普通函数重载和操作符函数重载的含义,定义格式和调用格式。
6. 函数定义中值参数和引用参数的说明格式及作用,函数被调用执行时对传送来的实际参数的影响。
7. 算法的时间复杂度和空间复杂度的概念,计算方法,数量级表示。
8. 一个简单算法的最好、最差和平均这三种情况的时间复杂度的计算。
对于本章的其余内容均作一般掌握。
第二章线性表重点掌握的内容:1. 线性表的定义及判别和抽象数据类型的描述,线性表中每一种操作的功能,对应的函数名、返回值类型和参数表中每个参数的作用。
2. 线性表的顺序存储结构的类型定义,即List类型的定义和每个域的定义及作用。
3. 线性表的每一种运算在顺序存储结构上实现的算法,及相应的时间复杂度。
4.链接存储的概念,线性表的单链接和双链接存储的结构,向单链表中一个结点之后插入新结点或从单链表中删除一个结点的后继结点的指针链接过程。
川大软件数据结构选择题库
_______________________________ 少年易学老难成,一寸光阴不可轻-百度文库一Chapter 1 Data Structures and Algorithms: Instructor's CD questions1.The primary purpose of most computer programs isa)to perform a mathematical calculation.*b) to store and retrieve information.c)to sort a collection of records.d)all of the above.e)none of the above.2.An integer is aa)) simple typeb)aggregate typec)composite typed)a and be)none of the above3.A payroll records is aa)simple typeb)aggregate typec)composite type*d) a and b e) none of the above4.Which of the following should NOT be viewed as an ADT?a)listb)integerc)array*d) none of the above5.A mathematical function is most like a*a) Problemb)Algorithmc)Program6.An algorithm must be or do all of the following EXCEPT:a)correctb)composed of concrete steps*c) ambiguousd)composed of a finite number of stepse)terminate7.A solution is efficient ifa.it solves a problem within the require resource constraints.b.it solves a problem within human reaction time.1_______________________________ 少年易学老难成,一寸光阴不可轻-百度文库_______ c.it solves a problem faster than other known solutions.d.a and b.*e. a and c.f. b and c.8.An array isa)A contiguous block of memory locations where each memory location storesa fixed-length data item.b)An ADT composed of a homogeneous collection of data items, each data item identified by a particular number.c)a set of integer values.*d) a and b.e)a and c.f)b and c.9.Order the following steps to selecting a data structure to solve a problem.(1)Determine the basic operations to be supported.(2)Quantify the resource constraints for each operation.(3)Select the data structure that best meets these requirements.(4)Analyze the problem to determine the resource constraints that anysolution must meet.a)(1, 2, 3, 4)b)(2, 3, 1, 4)c)(2, 1, 3, 4)*d) (1, 2, 4, 3)e) (1, 4, 3, 2)10.Searching for all those records in a database with key value between 10 and 100 is known as:a) An exact match query.*b) A range query.c)A sequential search.d)A binary search.Chapter 2 Mathematical Preliminaries: Instructor's CD questions1.A set has the following properties:a)May have duplicates, element have a position.b)May have duplicates, elements do not have a position.c)May not have duplicates, elements have a position.*d) May not have duplicates, elements do not have a position._______________________________ 少年易学老难成,一寸光阴不可轻-百度文库2.A sequence has the following properties:a)) May have duplicates, element have a position.b)May have duplicates, elements do not have a position.c)May not have duplicates, elements have a position.d)May not have duplicates, elements do not have a position.3.For set F, the notation |P| indicatesa)) The number of elements in Pb)The inverse of Pc)The powerset of F.d)None of the above.4.Assume that P contains n elements. The number of sets in the powerset of P isa)nb)n A2*c) 2A nd)2A n - 1e) 2A n + 15.If a sequence has n values, then the number of permutations for that sequence will bea)nb)n A2c)n A2 - 1d)2A n*e) n!6.If R is a binary relation over set S, then R is reflexive if*a) aRa for all a in S.b)whenever aRb, then bRa, for all a, b in S.c)whenever aRb and bRa, then a = b, for all a, b in S.d)whenever aRb and aRc, then aRc, for all a, b, c in S.7.If R is a binary relation over set S, then R is transitive ifa)aRa for all a in S.b)whenever aRb, then bRa, for all a, b in S.c)whenever aRb and bRa, then a = b, for all a, b in S.*d) whenever aRb and aRc, then aRc, for all a, b, c in S.8.R is an equivalence relation on set S if it isa)) reflexive, symmetric, transitive.b)reflexive, antisymmetric, transitive.c)symmetric, transitive.少年易学老难成,一寸光阴不可轻-百度文库d)antisymmetric, transitive.e)irreflexive, symmetric, transitive.f)irreflexive, antisymmetric, transitive.9.For the powerset of integers, the subset operation defines *a) a partial order.b)a total order.c)a transitive order.d)none of the above.10.log nm is equal toa) n + m*b) log n + log mc)m log nd)log n - log m11.A close-form solution isa) an analysis for a program.*b) an equation that directly computes the value of a summation.c) a complete solution for a problem.12.Mathematical induction is most likea) iteration.*b) recursion.c)branching.d)divide and conquer.13.A recurrence relation is often used to model programs witha)for loops.b)branch control like "if" statements.*c) recursive calls.d) function calls.14.Which of the following is not a good proof technique.a) proof by contradiction.*b) proof by example.c) proof by mathematical induction.15.We can use mathematical induction to:a) Find a closed-form solution for a summation.*b) Verify a proposed closed-form solution for a summation.c) Both find and verify a closed-form solution for a summation._______________________________ 少年易学老难成,一寸光阴不可轻-百度文库一Chapter 3 Algorithm Analysis: Instructor's CD questions1.A growth rate applies to:a)the time taken by an algorithm in the average case.b)the time taken by an algorithm as the input size grows.c)the space taken by an algorithm in the average case.d)the space taken by an algorithm as the input size grows.e)any resource you wish to measure for an algorithm in the average case.*f) any resource you wish to measure for an algorithm as the input size grows.2.Pick the growth rate that corresponds to the most efficient algorithm as n gets large:a) 5n*b) 20 log nc)2nA2d)2A n3.Pick the growth rate that corresponds to the most efficient algorithm when n =4.a)5nb)20 log nc)2nA2*d)2A n4.Pick the quadratic growth rate.a)5nb)20 log n*c) 2nA2d) 2An5.Asymptotic analysis refers to:a) The cost of an algorithm in its best, worst, or average case.*b) The growth in cost of an algorithm as the input size grows towards infinity.c)The size of a data structure.d)The cost of an algorithm for small input sizes6.For an air traffic control system, the most important metric is:a)The best-case upper bound.b)The average-case upper bound.c)) The worst-case upper bound.d)The best-case lower bound._______________________________ 少年易学老难成,一寸光阴不可轻-百度文库__________e)The average-case lower bound.f)The worst-case lower bound.7.When we wish to describe the upper bound for a problem we use:a)) The upper bound of the best algorithm we know.b)The lower bound of the best algorithm we know.c)We can't talk about the upper bound of a problem because there can alwaysbe an arbitrarily slow algorithm.8.When we describe the lower bound for a problem we use:a)The upper bound for the best algorithm we know.b)the lower bound for the best algorithm we know.c)The smallest upper bound that we can prove for the best algorithm that could possibly exist.*d) The greatest lower bound that we can prove for the best algorithm that could possibly exist.9.When the upper and lower bounds for an algorithm are the same, we use:a)big-Oh notation.b)big-Omega notation.*c) Theta notation.d)asymptotic analysis.e)Average case analysis.f)Worst case analysis.10. When performing asymptotic analysis, we can ignore constants and low order terms because:*a) We are measuring the growth rate as the input size gets large.b)We are only interested in small input sizes.c)We are studying the worst case behavior.d)We only need an approximation.11.The best case for an algorithm refers to:a) The smallest possible input size.*b) The specific input instance of a given size that gives the lowest cost.c)The largest possible input size that meets the required growth rate.d)The specific input instance of a given size that gives the greatest cost.12.For any algorithm:a)) The upper and lower bounds always meet, but we might not know what they are.少年易学老难成,一寸光阴不可轻-百度文库b)The upper and lower bounds might or might not meet.c)We can always determine the upper bound, but might not be able to determine the lower bound.d)We can always determine the lower bound, but might not be able to determine the upper bound.13.If an algorithm is Theta(f(n)) in the average case, then it is: a) Omega(f(n)) in the best case.*b) Omega(f(n)) in the worst case.c) O(f(n)) in the worst case.14.For the purpose of performing algorithm analysis, an important property ofa basic operation is that:a)It be fast.b)It be slow enough to measure.c)Its cost does depend on the value of its operands.*d) Its cost does not depend on the value of its operands.15.For sequential search,a) The best, average, and worst cases are asymptotically the same.*b) The best case is asymptotically better than the average and worst cases.c)The best and average cases are asymptotically better than the worst case.d)The best case is asymptotically better than the average case, and the average case is asymptotically better than the worst case.Chapter 4 Lists, Stacks and Queues: Instructor's CD questions1.An ordered list is one in which:a) The element values are in sorted order.*b) Each element a position within the list.2.An ordered list is most like a:a)set.b)bag.c)) sequence.3.As compared to the linked list implementation for lists, the array-based listimplementation requires:a)More spaceb)Less space*c) More or less space depending on how many elements are in the list._______________________________ 少年易学老难成,一寸光阴不可轻-百度文库4.Here is a series of C++ statements using the list ADT in the book.L1.append(10);L1.append(20);L1.append(15);If these statements are applied to an empty list, the result will look like:a)< 10 20 15 >*b) < | 10 20 15 >c)< 10 20 15 | >d)< 15 20 10 >e)< | 15 20 10 >f)< 15 20 10 | >5.When comparing the array-based and linked implementations, the array-based implementation has:a)) faster direct access to elements by position, but slower insert/delete from the current position.b)slower direct access to elements by position, but faster insert/delete from the current position.c)both faster direct access to elements by position, and faster insert/delete from the current position.d)both slower direct access to elements by position, and slower insert/delete from the current position.6.For a list of length n, the linked-list implementation's prev function requiresworst-case time:a)O(1).b)O(log n).*c) O(n).d) O(n A2).7.Finding the element in an array-based list with a given key value requiresworst case time:a)O(1).b)O(log n).*c) O(n).d) O(n A2).8.In the linked-list implementation presented in the book, a header node isused:*a) To simplify special cases._______________________________ 少年易学老难成,一寸光阴不可轻-百度文库一b)Because the insert and delete routines won't work correctly without it.c)Because there would be no other way to make the current pointer indicatethe first element on the list.9.When a pointer requires 4 bytes and a data element requires 4 bytes, thelinked list implementation requires less space than the array-based list implementation when the array would be:a)less than 1/4 full.b)less than 1/3 full.*c) less than half full.d)less than 第full.e)less than 34 fullf)never.10.When a pointer requires 4 bytes and a data element requires 12 bytes, thelinked list implementation requires less space than the array-based list implementation when the array would be:a)) less than 1/4 full.b)less than 1/3 full.c)less than half full.d)less than 2/3 full.e)less than 34 fullf)never.11.When we say that a list implementation enforces homogeneity, we meanthat:a) All list elements have the same size.*b) All list elements have the same type.c) All list elements appear in sort order.12.When comparing the doubly and singly linked list implementations, we findthat the doubly linked list implementation*a) Saves time on some operations at the expense of additional space.b)Saves neither time nor space, but is easier to implement.c)Saves neither time nor space, and is also harder to implement.13. We use a comparator function in the Dictionary class ADT:a)to simplify implementation.*b) to increase the opportunity for code reuse.c) to improve asymptotic efficiency of some functions.14.All operations on a stack can be implemented in constant time except:少年易学老难成,一寸光阴不可轻-百度文库a) Pushb)Popc)The implementor's choice of push or pop (they cannot both be implementedin constant time).*d) None of the above.15.Recursion is generally implemented usinga) A sorted list.*b) A stack.c) A queue.Chapter 5 Binary Trees: Instructor's CD questions1.The height of a binary tree is:a)The height of the deepest node.b)The depth of the deepest node.*c) One more than the depth of the deepest node.2.A full binary tree is one in which:*a) Every internal node has two non-empty children.b) all of the levels, except possibly the bottom level, are filled.3.The relationship between a full and a complete binary tree is:a)Every complete binary tree is full.b)Every full binary tree is complete.*c) None of the above.4.The Full Binary Tree Theorem states that:a)) The number of leaves in a non-empty full binary tree is one more than the number of internal nodes.b)The number of leaves in a non-empty full binary tree is one less than the number of internal nodes.c)The number of leaves in a non-empty full binary tree is one half of the number of internal nodes.d)The number of internal nodes in a non-empty full binary tree is one half of the number of leaves.5.The correct traversal to use on a BST to visit the nodes in sorted order is:a) Preorder traversal.*b) Inorder traversal.c) Postorder traversal.6. When every node of a full binary tree stores a 4-byte data field,10少年易学老难成,一寸光阴不可轻-百度文库two 4-byte child pointers, and a 4-byte parent pointer, theoverhead fraction is approximately:a)one quarter.b)one third.c)one half.d)two thirds.*e) three quarters.f) none of the above.7.When every node of a full binary tree stores an 8-byte data field and two 4-byte child pointers, the overhead fraction is approximately:a)one quarter.b)one third.*c) one half.d)two thirds.e)three quarters.f)none of the above.8.When every node of a full binary tree stores a 4-byte data field and theinternal nodes store two 4-byte child pointers, the overhead fraction is approximately:a)one quarter.b)one third.*c) one half.d)two thirds.e)three quarters.f)none of the above.9.If a node is at position r in the array implementation for a complete binarytree, then its parent is at:a)) (r - 1)/2 if r > 0b)2r + 1 if (2r + 1) < nc)2r + 2 if (2r + 2) < nd)r - 1 if r is evene)r + 1 if r is odd.10.If a node is at position r in the array implementation for a complete binarytree, then its right child is at:a)(r - 1)/2 if r > 0b)2r + 1 if (2r + 1) < n*c) 2r + 2 if (2r + 2) < nd)r - 1 if r is evene)r + 1 if r is odd.11_______________________________ 少年易学老难成,一寸光阴不可轻-百度文库—11.Assume a BST is implemented so that all nodes in the left subtree of agiven node have values less than that node, and all nodes in the rightsubtree have values greater than or equal to that node. Whenimplementing the delete routine, we must select as its replacement:a) The greatest value from the left subtree.*b) The least value from the right subtree.c) Either of the above.12.Which of the following is a true statement:a)In a BST, the left child of any node is less than the right child, and in a heap, the left child of any node is less than the right child.*b) In a BST, the left child of any node is less than the right child, but in a heap, the left child of any node could be less than or greater than the right child.c)In a BST, the left child of any node could be less or greater than the right child, but in a heap, the left child of any node must be less than the right child.d)In both a BST and a heap, the left child of any node could be either less than or greater than the right child.13.When implementing heaps and BSTs, which is the best answer?a)The time to build a BST of n nodes is O(n log n), and the time to build a heap of n nodes is O(n log n).b)The time to build a BST of n nodes is O(n), and the time to build a heap of n nodes is O(n log n).*c) The time to build a BST of n nodes is O(n log n), and the time to build a heap of n nodes is O(n).d) The time to build a BST of n nodes is O(n), and the time to build a heap of n nodes is O(n).14.The Huffman coding tree works best when the frequencies for letters area) Roughly the same for all letters.*b) Skewed so that there is a great difference in relative frequencies for various letters.15.Huffman coding provides the optimal coding when:a)The messages are in English.b)The messages are binary numbers.*c) The frequency of occurrence for a letter is independent of its context within the message.d) Never.12_______________________________ 少年易学老难成,一寸光阴不可轻-百度文库一Chapter 6 Binary Trees: Instructor's CD questions1.The primary ADT access functions used to traverse a general tree are: a) left child and right siblingb) left child and right child*c) leftmost child and right siblingd) leftmost child and next child2.The tree traversal that makes the least sense for a general treeis:a) preorder traversal*b) inorder traversalc) postorder traversal3.The primary access function used to navigate the general tree when performing UNION/FIND is:a)left childb)leftmost childc)right childd)right sibling*e) parent4.When using the weighted union rule for merging disjoint sets, the maximum depth for any node in a tree of size n will be:a) nearly constant*b) log nc)nd)n log ne)n A25.We use the parent pointer representation for general trees to solve which problem?a)Shortest pathsb)General tree traversal*c) Equivalence classesd) Exact-match query6. When using path compression along with the weighted union rule for merging disjoint sets, the average cost for any UNION or FIND operation in a tree of size n will be:*a) nearly constantb)log nc)nd)n log n13_______________________________ 少年易学老难成,一寸光阴不可轻-百度文库一7.The most space efficient representation for general trees will typically be:a) List of children*b) Left-child/right siblingc) A K-ary tree.8.The easiest way to represent a general tree is to:a) convert to a list.*b) convert to a binary tree.c) convert to a graph.9.As K gets bigger, the ratio of internal nodes to leaf nodes:a)) Gets smaller.b)Stays the same.c)Gets bigger.d)Cannot be determined, since it depends on the particular configuration of the tree.10.A sequential tree representation is best used for:*a) Archiving the tree to disk.b)Use in dynamic in-memory applications.c)Encryption algorithms.d)It is never better than a dynamic representation.Chapter 7 Internal Sorting: Instructor's CD questions1.A sorting algorithm is stable if it:a) Works for all inputs.*b) Does not change the relative ordering of records with identical key values.c) Always sorts in the same amount of time (within a constant factor) for a given input size.2.Which sorting algorithm does not have any practical use?a) Insertion sort.*b) Bubble sort.c)Quicksort.d)Radix Sort.e)a and b.3.When sorting n records, Insertion sort has best-case cost:a)O(log n).14_______________________________ 少年易学老难成,一寸光阴不可轻-百度文库*b) O(n).c)O(n log n).e)O(n!)f)None of the above.4.When sorting n records, Insertion sort has worst-case cost:a)O(log n).b)O(n).c)O(n log n).*d) O(n A2)e)O(n!)f)None of the above.5.When sorting n records, Quicksort has worst-case cost:a)O(log n).b)O(n).c)O(n log n).*d) O(n A2)e)O(n!)f)None of the above.6.When sorting n records, Quicksort has average-case cost:a)O(log n).b)O(n).c)) O(n log n).d)O(n A2)e)O(n!)f)None of the above.7.When sorting n records, Mergesort has worst-case cost:a)O(log n).b)O(n).*c) O(n log n).d)O(n A2)e)O(n!)f)None of the above.8.When sorting n records, Radix sort has worst-case cost:a)O(log n).b)O(n).c)O(n log n).d)O(n A2)e)O(n!)15少年易学老难成,一寸光阴不可轻-百度文库*f) None of the above.9.When sorting n records with distinct keys, Radix sort has a lower bound of:a)Omega(log n).b)Omega(n).*c) Omega(n log n).d)Omega(n A2)e)Omega(n!)f)None of the above.10.Any sort that can only swap adjacent records as an average case lower bound of:a)Omega(log n).b)Omega(n).c)Omega(n log n).*d) Omega(n A2)e)Omega(n!)f)None of the above.11.The number of permutations of size n is:a)O(log n).b)O(n).c)O(n log n).d)O(n A2)*e) O(n!)f)None of the above.12.When sorting n records, Selection sort will perform how many swaps in the worst case?a) O(log n).*b) O(n).c)O(n log n).d)O(n A2)e)O(n!)f)None of the above.13.Shellsort takes advantage of the best-case behavior of which sort?*a) Insertion sortb)Bubble sortc)Selection sortd)Shellsorte)Quicksortf)Radix sort16_______________________________ 少年易学老难成,一寸光阴不可轻-百度文库_______________14.A poor result from which step causes the worst-case behavior for Quicksort?*a) Selecting the pivotb)Partitioning the listc)The recursive call15.In the worst case, the very best that a sorting algorithm can do when sorting n records is:a)O(log n).b)O(n).*c) O(n log n).d)O(n A2)e)O(n!)f)None of the above.Chapter 8 File Processing and External Sorting: Instructor's CD questions1.As compared to the time required to access one unit of data frommain memory, accessing one unit of data from disk is:a)10 times faster.b)1000 times faster.c)1,000,000 time faster.d)10 times slower.e)1000 times slower.*f) 1,000,000 times slower.2.The most effective way to reduce the time required by a disk-based program is to:a) Improve the basic operations.*b) Minimize the number of disk accesses.c)Eliminate the recursive calls.d)Reduce main memory use.3.The basic unit of I/O when accessing a disk drive is:a)A byte.*b) A sector.c)A cluster.d)A track.e)An extent.4.The basic unit for disk allocation under DOS or Windows is:a)A byte.b)A sector.*c) A cluster.17少年易学老难成,一寸光阴不可轻-百度文库d) A track.e) An extent.5.The most time-consuming part of a random access to disk is usually: *a) The seek.b)The rotational delay.c)The time for the data to move under the I/O head.6.The simplest and most commonly used buffer pool replacement strategy is:a)First in/First out.b)Least Frequently Used.*c) Least Recently Used.7.The C++ programmer's view of a disk file is most like:a)) An array.b)A list.c)A tree.d)A heap.8.In external sorting, a run is:a)) A sorted sub-section for a list of records.b)One pass through a file being sorted.c)The external sorting process itself.9.The sorting algorithm used as a model for most external sorting algorithms is:a)Insertion sort.b)Quicksort.*c) Mergesort.d) Radix Sort.10.Assume that we wish to sort ten million records each 10 bytes long (for a total file size of 100MB of space). We have working memory of size 1MB, broken into 1024 1K blocks. Using replacement selection and multiway merging, we can expect to sort this file using how many passes through the file?a)About 26 or 27 (that is, log n).b)About 10.c)4.*d) 2.Chapter 9 Searching: Instructor's CD questions18少年易学老难成,一寸光阴不可轻-百度文库1.Which is generally more expensive?a) A successful search.*b) An unsuccessful search.2.When properly implemented, which search method is generally the most efficient for exact-match queries?a)Sequential search.b)Binary search.c)Dictionary search.d)Search in self-organizing lists*e) Hashing3.Self-organizing lists attempt to keep the list sorted by:a) value*b) frequency of record accessc) size of record4.The 80/20 rule indicates that:a) 80% of searches in typical databases are successful and 20% are not.*b) 80% of the searches in typical databases are to 20% of the records.c) 80% of records in typical databases are of value, 20% are not.5.Which of the following is often implemented using a self-organizing list? *a) Buffer pool.b)Linked list.c)Priority queue.6.A hash function must:a)) Return a valid position within the hash table.b)Give equal probability for selecting an slot in the hash table.c)Return an empty slot in the hash table.7.A good hash function will:a)Use the high-order bits of the key value.b)Use the middle bits of the key value.c)Use the low-order bits of the key value.*d) Make use of all bits in the key value.8.A collision resolution technique that places all records directlyinto the hash table is called:a)Open hashing.b)Separate chaining.*c) Closed hashing.d) Probe function.19少年易学老难成,一寸光阴不可轻-百度文库9.Hashing is most appropriate for:a)In-memory applications.b)Disk-based applications.*c) Either in-memory or disk-based applications.10.Hashing is most appropriate for:a)) Range queries.b)Exact-match queries.c)Minimum/maximium value queries.11.In hashing, the operation that will likely require more record accesses is: *a) insertb) deleteChapter 10 Indexing: Instructor's CD questions1.An entry-sequenced file stores records sorted by:a)Primary key value.b)Secondary key value.*c) Order of arrival.d) Frequency of access.2.Indexing is:a) Random access to an array.*b) The process of associating a key with the location of a corresponding data record.c) Using a hash table.3.The primary key is:a)) A unique identifier for a record.b)The main search key used by users of the database.c)The first key in the index.4.Linear indexing is good for all EXCEPT:a)Range queries.b)Exact match queries.*c) Insertion/Deletion.d)In-memory applications.e)Disk-based applications.5.An inverted list provides access to a data record from its:a) Primary key.20______________________________ 少年易学老难成,一寸光阴不可轻-百度文库*b) Secondary key.c) Search key.6.ISAM degrades over time because:a) Delete operations empty out some cylinders.*b) Insert operations cause some cylinders to overflow.c) Searches disrupt the data structure.7.Tree indexing methods are meant to overcome what deficiency in hashing? *a) Inability to handle range queries.。
[大连理工大学]20春《数据结构》在线作业1-复习资料答案
科目名称:大工20春《数据结构》在线作业1学校名称:奥鹏-大连理工大学一、单选题 (共 10 道试题,共 50 分)1.以下选项属于非线性结构的是( )。
A.广义表B.队列C.优先队列D.栈提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:A2.在存储数据时,通常不仅需要存储数据元素的值,还要存储( )。
A.数据元素的类型B.数据的基本运算C.数据元素之间的关系D.数据的存取方式提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:C3.以下选项属于逻辑结构的是( )。
A.顺序表B.散列表C.有序表D.单链表提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:C4.一个递归算法必须包括( )。
A.递归部分B.终止条件和递归部分C.迭代部分D.终止条件和迭代部分提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:B5.算法的时间复杂度与( )有关。
A.问题规模B.计算机硬件的运行速度C.源程序的长度D.编译后执行程序的质量提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:A6.静态链表与动态链表相比较,其缺点是( )。
A.插入和删除需移动较多数据B.有可能浪费较多存储空间C.不能随机存取D.以上都不是提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:B7.链式栈和顺序栈相比,有一个比较明显的优点,即( )。
A.插入操作更加方便B.通常不会出现栈满的情况C.不会出现栈空的情况D.删除操作更加方便提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:B8.链式栈的栈顶在链表的( )位置。
A.链头B.链尾C.链中D.任意提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:A9.栈和队列具有相同的( )。
A.逻辑结构B.存储结构C.存取点D.运算提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:A10.计算机操作系统为了实现进程管理,采用了多种进程调度策略,先来先服务的策略使用了( )作为算法实现的基础。
《数据结构2264》20春在线作业1-0001【四川大学答案47886】
3.以下序列中,是堆()的有()。 A.{15,26,38,49,27,51,39,62} B.{15,23,71,94,72,68,26,73} C.{15,27,26,49,38,62,39,51} D.{15,23,26,68,94,72,71,73} E.{94,72,73,26,71,23,68,15}
15.对于关键字序列()进行散列存储时,若选用H()K7作为散列函数,则散列地址为0的元素有()个。 A.1 B.2 C.3 D.4
16.采用开放定址法处理散列表的冲突时,其平均查找长度()。 A.低于链接法处理冲突 B.高于链接法处理冲突 C.与链接法处理冲突相同 D.高于二分查找
17.下面关于图的存储的叙述中正确的是()。 A.用邻接表法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关。 B.用邻接表法存储图,占用的存储空间大小与图中边数和结点个数都有关 C.用邻接矩阵法存储图,占用的存储空间大小与图中结点个数和边数都有关。 D.用邻接矩阵法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关。
12.对一个算法的评价,不包括如下()方面的内容。 A.健壮性和可读性 B.并行性 C.正确性 D.时空复杂度
13.若用邻接矩阵表示一个有向图,则其中每一列包含的″1″的个数为()。 A.图中每个顶点的入度 B.图中每个顶点的出度 C.图中每个顶点的度 D.图中连通分量的数目
14.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查 找A[3]的比较序列的下标依次为()。 A.1,2,3 B.9,5,2,3 C.9,5,3 D.9,4,2,3
四川大学《数据结构》课程综合练习题——高起专计算机应用技术专业5
四、算法设计题 1、二维数组 a[m][n]和 b[m][n] void matrixadd(int a[m][n], int b[m][n], c[m][n]) { int j, k; for (j = 0; j < m; j++) { for (k = 0; k < n; k++) { c[j][k] = a[j][k] + b[j][k]; } } } 2、上面所列的几种排序方法的速度都很块,但快速排序、归并排序、基数排序和希尔排序都是在
(n-1)+(n-2)+(n-3)+…+2+1=n(n-1)/2 所以其结论成立。 3、不合适。因为一个城市的设计和规划涉及非常多的项目,很复杂,经常需要修改、 扩充和删除 各种信息,才能适应不断发展的需要。有鉴于此,顺序线性表不能很好适应其需要,故是不合适的。
4、具有 3 个结点的树
具有 3 个结点的二叉树
CBED 和 HGIJF 依此可推出前序遍历的左、右子树的结点序列为
BCDE 和 FGHIJ B 和 F 又分别为左、右子树的根结点,进而又可推出以 B 为根结点的左、右子树,以及 以 F 为根 结点的左、右子树。依此类推,可推出二叉树见下图。ABFC
DG
EH
I
J
三、简答题 1、共有 5 种不同形态的二叉树,具体如下:
2、证明 方法一:用归纳法证明 当 n=1 时,边数为 0,结论成立。 当 n=2 时,边数为 1,结论成立。 当 n=1,2…,k 时均成立,即当 n=k 时,边数为 k(k-1)/2。现证明当 n=k+1 时若仍然 成立,
则结论正确。 由前面证得,对于有 k 个顶点时,其边数总和为 k(k-1)/2。 当再增加一个新顶点时,由于是无向完全图,故该顶点到原来各个顶点均有一条边, 这样就共有
《数据结构》第一章作业参考答案
第一章作业参考答案1.31.4抽象数据类型复数的定义:ADT Complex{数据对象:D={e1,e2|e1,e2∈R}数据关系:R1={<e1,e2>|e1是复数的实数部分,e2是复数的虚数部分} 基本操作:AssignComplex(&z,v1,v2)操作结果:构造复数Z,其实部和虚部分别被赋以参数v1和v2的值。
DestroyComplex(&Z)初始条件:复数已存在操作结果:复数Z被销毁GetReal(Z,&RealPart)初始条件:复数已存在操作结果:用RealPart返回复数Z的实部值GetImag(Z,&ImagPart)初始条件:复数已存在操作结果:用ImagPart返回复数Z的虚部值Add(Z1,Z2,&sum)初始条件:Z1,Z2是复数操作结果:用sum返回两个复数Z1,Z2的和Sub(Z1,Z2,&dif)初始条件:Z1,Z2是复数操作结果:用dif返回两个复数Z1,Z2的差Mul(Z1,Z2,&pro)初始条件:Z1,Z2是复数操作结果:用pro返回两个复数Z1,Z2的乘积Div(Z1,Z2,&quo)初始条件:Z1,Z2是复数操作结果:用quo返回两个复数Z1,Z2的商}//ADT Complex抽象数据类型有理数的定义:ADT Rational{数据对象:D={e1,e2|e1,e2∈N}数据关系:R1={<e1,e2>|e1是有理数的分子,e2是有理数的分母,e2≠0} 基本操作:AssignRational(&Z,v1,v2)初始条件:v2≠0操作结果:构造有理数Z,其分子和分母分别被赋以参数v1和v2的值。
DestroyRational(&Z)初始条件:有理数已存在操作结果:有理数Z被销毁GetNumerator(Z,&NumeratorPart)初始条件:有理数已存在操作结果:用NumeratorPart返回有理数Z的分子GetDenominator(Z,&DenominatorPart)初始条件:有理数已存在操作结果:用DenominatorPart返回有理数Z的分母Add(Z1,Z2,&sum)初始条件:Z1,Z2是有理数操作结果:用sum返回两个有理数Z1,Z2的和Sub(Z1,Z2,&dif)初始条件:Z1,Z2是有理数操作结果:用dif返回两个有理数Z1,Z2的差Mul(Z1,Z2,&pro)初始条件:Z1,Z2是有理数操作结果:用pro返回两个有理数Z1,Z2的乘积Div(Z1,Z2,&quo)初始条件:Z1,Z2是有理数操作结果:用quo返回两个有理数Z1,Z2的商}//ADT Rational1.7 参考C++教材1.8(1)n-1(3)n-1(5)[n(n+1)(2n+1)/6+n(n+1)/2]/2 (参考《数据结构》第一章电子教案第41页例3)(7)1.16void print_descending()//按从大到小顺序输出三个数{scanf("%d,%d,%d",&x,&y,&z);if(x<y) x<->y; //<->为表示交换的双目运算符,以下同if(x<z) x<->z;if(y<z) y<->z;printf("%d %d %d",x,y,z);}//print_descending。
最新奥鹏远程东师数据结构20春在线作业1-正确答案
A错误
B正确
【答案】:B
31.最佳二叉排序树是AVL树(平衡二叉排序树)。
【选项】:
A错误
B正确
【答案】:B
32.用链表( lchild-rchild表示法)存储的包含n个结点的二叉树,结点的2n个指针域中有n + l个空指针。
【选项】:
A错误
B正确
【答案】:B
33.程序一定是算法。
【选项】:
C不同的同义词子表结合在一起
D散列表“溢出”
【答案】:C
11.数组A[6,7]的每个元素占5个字节,将其按列优先次序存储在起始地址为1000的内存单元中,则元素A[5,5]的地址是()。
【选项】:
A 1165
B 1170
C 1175
D 118
A图的遍历是从给定的源点出发每个顶点仅被访问一次
东北师范大学
东师远程
数据结构20春在线作业1
参考答案
试读一页
数据结构20春在线作业1
1.数据序列( 8 , 9 , l0 , 4 , 5 , 6 , 20 , 1 , 2 )只能是下列排序算法中的()的两趟排序后的结果。
【选项】:
A直接选择排序
B冒泡排序
C直接插入排序
D堆排序
【答案】:C
2.下面关于算法说法错误的是()。
【答案】:C
15.存放在外存中的数据的组织结构是()。
【选项】:
A数组
B表
C文件
D链表
【答案】:C
16.从一个栈顶指针top的链栈中删除一个结点时,用x保存被删除的元素,执行( )。
【选项】:
A x = top; top = top->next;
国开形成性考核02272《数据结构》形考任务(1-4)试题及答案
国开形成性考核02272《数据结构》形考任务(1-4)试题及答案国开形成性考核《数据结构》形考任务(1-4)试题及答案形考任务(1)一、单项选择题(每小题3分,共60分)1.把数据存储到计算机中,并具体体现数据元素间的逻辑结构称为(B)。
A。
给相关变量分配存储单元B。
物理结构C。
逻辑结构D。
算法的具体实现2.下列说法中,不正确的是(B)。
A。
数据项是数据中不可分割的最小可标识单位B。
数据项可由若干个数据元素构成C。
数据可有若干个数据元素构成D。
数据元素是数据的基本单位3.一个存储结点存储一个(D)。
A。
数据类型B。
数据项C。
数据结构D。
数据元素4.数据结构中,与所使用的计算机无关的是数据的(B)。
A。
存储结构B。
逻辑结构C。
物理和存储结构D。
物理结构5.在线性表的顺序结构中,以下说法正确的是(D)。
A。
进行数据元素的插入、删除效率较高B。
逻辑上相邻的元素在物理位置上也相邻C。
数据元素是不能随机访问的D。
逻辑上相邻的元素在物理位置上不一定相邻6.对链表,以下叙述中正确的是(D)。
A。
可以通过下标对链表进行直接访问B。
插入删除元素的操作一定要要移动结点C。
结点占用的存储空间是连续的D。
不能随机访问任一结点7.下列的叙述中,不属于算法特性的是(B)。
A。
可行性B。
可读性C。
有穷性D。
输入性8.算法的时间复杂度与(B)有关。
A。
所使用的计算机B。
算法本身C。
数据结构D。
计算机的操作系统9.设有一个长度为n的顺序表,要在第i个元素之前(也就是插入元素作为新表的第i个元素),插入一个元素,则移动元素个数为(C)。
A。
iB。
n-iC。
n-i+1D。
n-i-110.设有一个长度为n的顺序表,要删除第i个元素移动元素的个数为(D)。
A。
n-i-1B。
iC。
n-i+1D。
n-i11.在一个单链表中,p、q分别指向表中两个相邻的结点,且q所指结点是p所指结点的直接后继,现要删除q所指结点,可用语句(D)。
的第一个结点和尾结点,则删除操作后的链表长度为(C)。
数据结构第一次作业题及答案.doc
第1次作业一、单项选择题(本大题共60分,共20小题,每小题3分)1.在长度为n的顺序表求最小值的时间复杂度为()。
A.0(1)B.0 (n)C.O (n2)D.O (logn)2.顺序表中数据元索的存取方式是()oA.顺序存取B.链式存取C.随机存取D.散列存取3.对于一个具有n个结点的单链表,,在给定值为x的结点后插入一个新结点的平均时间复杂度为()。
A.0(0)B.0(1)C.O(n)D.0(n2)4.在稀疏矩阵的带行指针向量的链接存储中,每个行单链表中的结点都具有和同的()。
A.行号B.列号C.元素值D.地址5.数组A [0.. 5] [0.. 5]的每个元素占5个字节,将其以列为主序存储在起始地址为1000的内存单元中,则元索A [5] [5]的地址是( )。
A.1175B.1180C.1205D.12106.下而程序段的时间复杂度是()。
i = 0; while (i<=n) i二i * 3;A.0 (3n)B.0(log3n)C.0 (n3)D.0(n2)7.假设顺序表中第一个数据元索的存储地址是1000,每个元索占用4个字节,则第7个元索的存储地址是()。
A.1024C.1004D.10078・设栈S和队列Q的初始状态为空,元素el, e2, e3, e4, e5和e6依次通过栈S, —个元素出栈后即进队列Q,若6个元素出队的序列是e2, e4,e3, e6, e5, el则栈S的容量至少应该是()。
A.B.4C.3D.29.判断带头结点的循环单链表L屮只冇一个结点的条件是()。
A.L二二NULLB.L->next->next==LD.L->next==NULL10.下而关于算法说法错误的是()。
A.算法最终必须rti计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C.算法的可行性是指指令不能有二义性D.以上几个都是错谋的11.用单链表表示的链队列中,队头在链表的()位置。
大工20春《数据结构与算法》在线作业1(参考资料)
大工20春《数据结构与算法》在线作业
1(参考资料)
根据您的需求,为您提供一份关于大工20春《数据结构与算法》在线作业1的参考资料。
以下是一些有用的信息和资源,希望能帮助到您完成作业。
作业要求
作业1要求学生完成以下任务:
1. 实现一个线性表的动态数组(ArrayList)类。
2. 实现数组类的增加元素、删除元素、获取元素和遍历等基本操作。
3. 设计并实现一系列针对动态数组的测试用例。
参考资料
以下是一些可能对您完成作业有帮助的参考资料:
1. 《数据结构与算法(C++语言版)》(清华大学出版社):
该书提供了关于线性表、数组和动态数组等内容的详细说明和代码
示例。
2. 网上教程和博客:在网上搜索关于实现动态数组的教程和博客,可以找到丰富的资料和代码示例,如CSDN、博客园等。
3. 课程讲义和教学视频:回顾和参考课程讲义中关于线性表和
动态数组的知识点,结合教学视频中的示例代码,加深理解和实践。
注意事项
完成作业时,请注意以下要求:
1. 请遵循作业要求中提到的功能和操作。
2. 参考资料仅供参考,请不要直接复制粘贴代码,应自己动手
实现。
3. 如果使用了参考资料中的代码或思路,请在作业中注明出处。
4. 如果在实现过程中遇到困难或问题,请及时向助教或老师寻
求帮助。
祝您顺利完成作业!如果还有其他问题或需要进一步的帮助,请随时与我联系。
数据结构-作业资料答案解析-(C语言知识学习版严蔚敏)
第1章 绪论1.1 简述下列术语:数据,数据元素、数据对象、数据结构、存储结构、数据类型和抽象数据类型。
解:数据是对客观事物的符号表示。
在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。
数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。
数据对象是性质相同的数据元素的集合,是数据的一个子集。
数据结构是相互之间存在一种或多种特定关系的数据元素的集合。
存储结构是数据结构在计算机中的表示。
数据类型是一个值的集合和定义在这个值集上的一组操作的总称。
抽象数据类型是指一个数学模型以及定义在该模型上的一组操作。
是对一般数据类型的扩展。
1.2 试描述数据结构和抽象数据类型的概念与程序设计语言中数据类型概念的区别。
解:抽象数据类型包含一般数据类型的概念,但含义比一般数据类型更广、更抽象。
一般数据类型由具体语言系统内部定义,直接提供给编程者定义用户数据,因此称它们为预定义数据类型。
抽象数据类型通常由编程者定义,包括定义它所使用的数据和在这些数据上所进行的操作。
在定义抽象数据类型中的数据部分和操作部分时,要求只定义到数据的逻辑结构和操作说明,不考虑数据的存储结构和操作的具体实现,这样抽象层次更高,更能为其他用户提供良好的使用接口。
1.3 设有数据结构(D,R),其中{}4,3,2,1d d d d D =,{}r R =,()()(){}4,3,3,2,2,1d d d d d d r =试按图论中图的画法惯例画出其逻辑结构图。
解:1.4 试仿照三元组的抽象数据类型分别写出抽象数据类型复数和有理数的定义(有理数是其分子、分母均为自然数且分母不为零的分数)。
解:ADT Complex{ 数据对象:D={r,i|r,i 为实数} 数据关系:R={<r,i>} 基本操作: InitComplex(&C,re,im)操作结果:构造一个复数C ,其实部和虚部分别为re 和im DestroyCmoplex(&C)操作结果:销毁复数C Get(C,k,&e) 操作结果:用e 返回复数C 的第k 元的值 Put(&C,k,e)操作结果:改变复数C 的第k 元的值为eIsAscending(C)操作结果:如果复数C的两个元素按升序排列,则返回1,否则返回0 IsDescending(C)操作结果:如果复数C的两个元素按降序排列,则返回1,否则返回0 Max(C,&e)操作结果:用e返回复数C的两个元素中值较大的一个Min(C,&e)操作结果:用e返回复数C的两个元素中值较小的一个}ADT ComplexADT RationalNumber{数据对象:D={s,m|s,m为自然数,且m不为0}数据关系:R={<s,m>}基本操作:InitRationalNumber(&R,s,m)操作结果:构造一个有理数R,其分子和分母分别为s和mDestroyRationalNumber(&R)操作结果:销毁有理数RGet(R,k,&e)操作结果:用e返回有理数R的第k元的值Put(&R,k,e)操作结果:改变有理数R的第k元的值为eIsAscending(R)操作结果:若有理数R的两个元素按升序排列,则返回1,否则返回0 IsDescending(R)操作结果:若有理数R的两个元素按降序排列,则返回1,否则返回0 Max(R,&e)操作结果:用e返回有理数R的两个元素中值较大的一个Min(R,&e)操作结果:用e返回有理数R的两个元素中值较小的一个}ADT RationalNumber1.5 试画出与下列程序段等价的框图。