数据结构练习试题和答案解析(共46页).doc
《数据结构练习试题和答案解析(共46页).doc》由会员分享,可在线阅读,更多相关《数据结构练习试题和答案解析(共46页).doc(46页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上第1章 绪论一、 判断题1. 数据的逻辑结构与数据元素本身的内容和形式无关。 ()2. 一个数据结构是由一个逻辑结构和这个逻辑结构上的一个基本运算集构成的整体。 ()3. 数据元素是数据的最小单位。 ()4. 数据的逻辑结构和数据的存储结构是相同的。 ()5. 程序和算法原则上没有区别,所以在讨论数据结构时可以通用。 ()6. 从逻辑关系上讲,数据结构主要分为线性结构和非线性结构两类。 ()7. 数据的存储结构是数据的逻辑结构的存储映象。 ()8. 数据的物理结构是指数据在计算机内实际的存储形式。 ()9. 数据的逻辑结构是依赖于计算机的。 ()10. 算法是对解题方
2、法和步骤的描述。 ()二、填空题1. 数据有逻辑结构和 存储结构 两种结构。2. 数据逻辑结构除了集合以外,还包括线性结构、树形结构和图形结构 。3. 数据结构按逻辑结构可分为两大类,它们是线性结构和非线性结构 。4. 树形结构 和图形结构 合称为非线性结构。5. 在树形结构中,除了树根结点以外,其余每个结点只有1个前驱结点。6. 在图形结构中,每个结点的前驱结点数和后继结点数可以任意多个 。7. 数据的存储结构又叫物理结构 。8. 数据的存储结构形式包括顺序存储、链式存储、索引存储和散列存储 。9. 线性结构中的元素之间存在一对一 的关系。10. 树形结构中的元素之间存在一对多 的关系。11
3、. 图形结构的元素之间存在多对多 的关系。12. 数据结构主要研究数据的逻辑结构、存储结构和算法(或运算) 3个方面的内容。13. 数据结构被定义为(D,R),其中D是数据的有限集合,R是D上的关系 有限集合。14. 算法是一个有穷指令 的集合。15. 算法效率的度量可以分为事先估算法和事后统计法 。16. 一个算法的时间复杂度是算法 输入规模 的函数。17. 算法的空间复杂度是指该算法所耗费的存储空间 ,它是该算法求解问题规模的n的函数。18. 若一个算法中的语句频度之和为T(n)=6n+3nlog2n,则算法的时间复杂度为O( nlog2n) 。19. 若一个算法的语句频度之和为T(n)=
4、3n+nlog2+n2,则算法的时间复杂度为O(n2) 。20. 数据结构是一门研究非数值计算的程序问题中计算机的操作对象,以及它们之间的关系和运算的学科。三、选择题1. 数据结构通常是研究数据的(A)及它们之间的相互关系。A存储结构和逻辑结构 B存储和抽象 C联系和抽象 D联系与逻辑2. 在逻辑上可以把数据结构分成(C)。A动态结构和静态结构 B紧凑结构和非紧凑结构 C线性结构和非线性结构 D内部结构和外部结构。3. 数据在计算机存储内表示时,物理地址和逻辑地址相同并且是连续的,称之为(C)。A存储结构 B逻辑结构 C顺序存储结构 D链式存储结构4. 非线性结构中的每个结点(D)。A无直接前
5、驱结点 B无直接后继结点C只有一个直接前驱结点和一个直接后继结点D可能有多个直接前驱结点和多个直接后继结点5. 链式存储结构所占存储空间(A)。A分两部分,一部分存放结点的值,另一个部分存放表示结点间关系的指针。B只有一部分,存放结点的值。 C只有一部分,存储表示结点间关系的指针。D分两部分,一部分存放结点的值,另一部分存放结点所占单元素6. 算法的计算量大小称为算法的(C)。A现实性 B难度 C时间复杂性 D效率7. 数据的基本单位(B)。A数据结构 B数据元素 C数据项 D文件8. 每个结点只含有一个数据元素,所有存储结点相继存放在一个连续的存储空间里,这种存储结构称为(A)结构。A顺序结
6、构 B链式结构 C索引结构 D散列结构9. 每一个存储结点不仅含有一个数据元素,还包含一组指针,该存储方式是(B)。A顺序 B链式 C索引 D散列10. 以下任何两个结点之间都没有逻辑关系的是(D)。A图形结构 B线性结构 C树形结构 D集合11. 在数据结构中,与所使用的计算机无关的是(C)。A物理结构 B存储结构 C逻辑结构 D逻辑和存储结构12. 下列4种基本逻辑结构中,数据元素之间关系最弱的是(A)。A集合 B线性结构 C树形结构 D图形结构13. 与数据元素本身的形式、内容、相对位置、个数无关的是数据的(A)。A逻辑结构 B存储结构 C逻辑实现 D存储实现14. 每一个存储结点只含有
7、一个数据元素,存储结点存放在连续的存储空间,另外有一组指明结点存储位置的表,该存储方式是(C)存储方式。A顺序 B链式 C索引 D散列 15. 算法能正确的实现预定功能的特性称为算法的(A)。A正确性 B易读性 C健壮性 D高效性16. 算法在发生非法操作时可以作出相应处理的特性称为算法的(C)。A正确性 B易读性 C健壮性 D高效性17. 下列时间复杂度中最坏的是(D)。AO(1) B.O(n) C.O( log2n) D.O(n2)18. 下列算法的时间复杂度是(D)。for(i=0;in;i+)for(j=o;iprior-next=p-next;p-next-prior=p-prior
8、 20. 在如图所示的链表中,若在指针P所在的结点之后插入数据域值为a和b的两个结点,则可用语句S-next-next=p-next和P- next=S;来实现该操作。 p a b s三、 选择题1. 在具有n个结点的单向链表中,实现( A)的操作,其算法的时间复杂度都是O(n). A.遍历链表或求链表的第i个结点 B.在地址为P的结点之后插入一个结点C.删除开始结点 D.删除地址为P的结点的后继结点2. 设a、b、c为3个结点,p、10、20分别代表它们的地址,则如下的存储结构称为( B )。 p a 10 b 20 c A循环链表 B单向链表 C双向循环链表 D双向链表3. 单向链表的存储
9、密度( C )。A.大于1 B.等于1 C.小于1 D.不能确定4. 已知一个顺序存储的线性表,设每个结点占m个存储单元,若第一个结点的地址为B,则第i个结点的地址为( A )。A.B+(i-1)m B.B+im C.B-im D.B+(i+1)m5. 在有n个结点的顺序表上做插入、删除结点运算的时间复杂度为( B )。AO(1) B.O(n) C. O(n2) D.O( log2n)6. 设front、rear分别为循环双向链表结点的左指针和右指针,则指针P所指的元素是双循环链表L的尾元素的条件是( D )。A.P= =L B.P-front= =L C.P= =NULL D.P-rear=
10、 =L7. 两个指针P和Q,分别指向单向链表的两个元素,P所指元素是Q所指元素前驱的条件是( B ) AP-next= =Q-next B.P-next= =Q C.Q-next= =P D.P=Q8. 用链表存储的线性表,其优点是( C )。 A便于随机存取 B花费的存储空间比顺序表少C便于插入和删除 D数据元素的物理顺序与逻辑顺序相同9. 在单链表中,增加头结点的目的是( C )。 A使单链表至少有一个结点 B标志表中首结点的位置C方便运算的实现 D说明该单链表是线性表的链式存储结构10. 下面关于线性表的叙述中,错误的是( D )关系。 A顺序表必须占一片地址连续的存储单元B顺序表可以随
11、机存取任一元素C链表不必占用一片地址连续的存储单元D链表可以随机存取任一元素11. L是线性表,已知LengthList(L)的值是5,经DelList(L,2)运算后,LengthList(L)的值是( C )。 A2 B3 C4 D512. 单向链表的示意图如下: L A B C D P Q R指向链表Q结点的前驱的指针是( B )。AL BP CQ DR13. 设p为指向单循环链表上某结点的指针,则*p的直接前驱( C )。A找不到 B查找时间复杂度为O(1) C查找时间复杂度为O(n)D查找结点的次数约为n14. 等概率情况下,在有n个结点的顺序表上做插入结点运算,需平均移动结点的数目
12、为( 8 )。An B.(n-1)/2 C.n/2 D.(n+1)/215. 在下列链表中不能从当前结点出发访问到其余各结点的是( C )。A.双向链表 B.单循环链表 C.单向链表 D.双向循环链表16. 在顺序表中,只要知道( D ),就可以求出任一结点的存储地址。A.基地址 B.结点大小 C.向量大小 D.基地址和结点大小17. 在双向链表中做插入运算的时间复杂度为( A )。AO(1) B.O(n) C. O(n2) D.O( log2n)18. 链表不具备的特点是( A )。A随机访问 B.不必事先估计存储空间C. 插入删除时不需要移动元素 D.所需空间与线性表成正比19. 以下关于
13、线性表的论述,不正确的为( C )。A.线性表中的元素可以是数字、字符、记录等不同类型B.线性顺序表中包含的元素个数不是任意的C.线性表中的每个结点都有且仅有一个直接前驱和一个直接后继D.存在这样的线性表,即表中没有任何结点20. 在( B )的运算中,使用顺序表比链表好。A.插入 B.根据序号查找 C.删除 D.根据元素查找第3章 栈一、 判断题1. 栈是运算受限制的线性表。 ()2. 在栈空的情况下,不能作出栈操作,否则产生下溢。 ()3. 栈一定是顺序存储的线性结构。 ()4. 栈的特点是“后进先出”。 ()5. 空栈就是所有元素都为0的栈。 ()6. 在C(或C+)语言中设顺序栈的长度
14、为MAXLEN,则top=MAXLEN时表示栈满。 ()7. 链栈与顺序栈相比,其特点之一是通常不会出现栈满的情况。 ()8. 一个栈的输入序列为:A,B,C,D,可以得到输出序列:C,A,B,D。 ()9. 递归定义就是循环定义。 ()10. 将十进制数转换为二进制数是栈的典型应用之一。 ()二、填空题1. 在栈结构中,允许插入、删除的一端称为 栈顶 。2. 在顺序栈中,当栈顶指针top=-1时,表示 栈空 。3. 在有n个元素的栈中,进栈操作时间复杂度为 O(1) 。4. 在栈中,出栈操作时间复杂度为 O(1) 。5. 已知表达式,求它的后缀表达式是 栈 的典型应用。6. 在一个链栈中,若
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 练习 试题 答案 解析 46
限制150内