奥鹏易百

 找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

帮助中心知识拓展客服QQ 515224986
查看: 451|回复: 0

中石油北京17秋《数据结构》第一二三次在线作业

[复制链接]

1万

主题

1

回帖

2万

积分

论坛元老

积分
29370
发表于 2017-11-10 10:31:29 | 显示全部楼层 |阅读模式
扫码加微信
第一次在线作业
已完成0%(共40题,还剩40题)中国石油大学答案

单选题(共40道题)
收起
1.(2.5分)程序段FORi=n1DOWNTO1DOFORj=1TOiDOIFA[j]&gtA[j+1]THENA[j]与A[j+1]对换;其中n为正整数,则最后一行的语句频度在最坏情况下是()
A、O(n)
B、O(nlogn)
C、O(n3)
D、O(n2)
2.(2.5分)若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为()(1&lt=i&lt=n+1)。
A、O(0)
B、O(1)
C、O(n)
D、O(n2)
3.(2.5分)算法的计算量的大小称为计算的
A、效率
B、复杂性
C、现实性
D、难度
4.(2.5分)算法的时间复杂度取决于
A、问题的规模
B、待处理数据的初态
C、A和B
5.(2.5分)下面关于算法说法错误的是
A、算法最终必须由计算机程序实现
B、为解决某问题的算法同为该问题编写的程序含义是相同的
C、算法的可行性是指指令不能有二义性
D、以上几个都是错误的
6.(2.5分)下面说法错误的是
A、算法原地工作的含义是指不需要任何额外的辅助空间
B、在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法
C、所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界
D、同一个算法,实现语言的级别越高,执行效率就不定
7.(2.5分)从逻辑上可以把数据结构分为()两大类
A、动态结构、静态结构
B、顺序结构、链式结构
C、线性结构、非线性结构
D、初等结构、构造型结构
8.(2.5分)以下数据结构中,哪一个是线性结构()
A、广义表
B、二叉树
C、稀疏矩阵
D、串
9.(2.5分)以下那一个术语与数据的存储结构无关?
A、栈
B、哈希表
C、线索树
D、双向链表
10.(2.5分)在下面的程序段中,对x的赋值语句的频度为()FORi=1TOnDOFORj=1TOnDOx=x+1
A、O(2n)
B、O(n)
C、O(n2)
D、O(log2n)
11.(2.5分)以下数据结构中,()是非线性数据结构
A、树
B、字符串
C、队
D、栈
12.(2.5分)下列数据中,()是非线性数据结构
A、栈
B、队列
C、完全二叉树
D、堆
13.(2.5分)下面关于线性表的叙述中,错误的是哪一个?()
A、线性表采用顺序存储,必须占用一片连续的存储单元。
B、线性表采用顺序存储,便于进行插入和删除操作。
C、线性表采用链接存储,不必占用一片连续的存储单元。
D、线性表采用链接存储,便于插入和删除操作。
14.(2.5分)若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用()存储方式最节省时间。
A、顺序表
B、双链表
C、带头结点的双循环链表
D、单循环链表
15.(2.5分)某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用()存储方式最节省运算时间。
A、单链表
B、仅有头指针的单循环链表
C、双链表
D、仅有尾指针的单循环链表
16.(2.5分)设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用()最节省时间。
A、单链表
B、.单循环链表
C、带尾指针的单循环链表
D、带头结点的双循环链表
17.(2.5分)若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点。则采用()存储方式最节省运算时间。
A、单链表
B、双链表
C、单循环链表
D、带头结点的双循环链表
18.(2.5分)链表不具有的特点是()
A、插入、删除不需要移动元素
B、可随机访问任一元素
C、不必事先估计存储空间
D、所需空间与线性长度成正比
19.(2.5分)线性表(a1a2…an)以链接方式存储时,访问第i位置元素的时间复杂性为()
A、O(i)
B、O(1)
C、O(n)
D、O(i1)
20.(2.5分)非空的循环单链表head的尾结点p↑满足()
A、p↑.link=head
B、p↑.link=NIL
C、p=NIL
D、p=head
21.(2.5分)循环链表H的尾结点P的特点是()
A、P^.NEXT=H
B、P^.NEXT=H^.NEXT
C、P=H
D、P=H^.NEXT
22.(2.5分)在一个以h为头的单循环链中,p指针指向链尾的条件是()
A、p^.next=h
B、p^.next=NIL
C、p^.next.^next=h
D、p^.data=1
23.(2.5分)完成在双循环链表结点p之后插入s的操作是()
A、p^.next=ss^.priou=pp^.next^.priou=ss^.next=p^.next
B、p^.next^.priou=sp^.next=ss^.priou=ps^.next=p^.next
C、s^.priou=ps^.next=p^.nextp^.next=sp^.next^.priou=s
D、s^.priou=ps^.next=p^.nextp^.next^.priou=sp^.next=s
24.(2.5分)在双向链表指针p的结点前插入一个指针q的结点操作是()
A、p&gtLlink=qq&gtRlink=pp&gtLlink&gtRlink=qq&gtLlink=q;
B、p&gtLlink=qp&gtLlink&gtRlink=qq&gtRlink=pq&gtLlink=p&gtLlink
C、q&gtRlink=pq&gtLlink=p&gtLlinkp&gtLlink&gtRlink=qp&gtLlink=q
D、q&gtLlink=p&gtLlinkq&gtRlink=qp&gtLlink=qp&gtLlink=q
25.(2.5分)在单链表指针为p的结点之后插入指针为s的结点,正确的操作是:()
A、p&gtnext=ss&gtnext=p&gtnext
B、s&gtnext=p&gtnextp&gtnext=s
C、p&gtnext=sp&gtnext=s&gtnext
D、p&gtnext=s&gtnextp&gtnext=s
26.(2.5分)对于一个头指针为head的带头结点的单链表,判定该表为空表的条件是()
A、head==NULL
B、head→next==NULL
C、head→next==head
D、head!=NULL
27.(2.5分)对于栈操作数据的原则是()。
A、先进先出
B、后进先出
C、后进后出
D、不分顺序
28.(2.5分)有六个元素6,5,4,3,2,1的顺序进栈,问下列哪一个不是合法的出栈序列?()
A、543612
B、453126
C、346521
D、234156
29.(2.5分)设一个栈的输入序列是1,2,3,4,5则下列序列中,是栈的合法输出序列的是()
A、51234
B、45132
C、43125
D、32154
30.(2.5分)输入序列为ABC,可以变为CBA时,经过的栈操作为()
A、pushpoppushpoppushpop
B、pushpushpushpoppoppop
C、pushpushpoppoppushpop
D、pushpoppushpushpoppop
31.(2.5分)若一个栈以向量V[1..n]存储,初始栈顶指针top为n+1,则下面x进栈的正确操作是()。
A、top=top+1V[top]=x
B、V[top]=xtop=top+1
C、top=top1V[top]=x
D、V[top]=xtop=top1
32.(2.5分)若栈采用顺序存储方式存储,现两栈共享空间V[1..m],top[i]代表第i个栈(i=12)栈顶,栈1的底在v[1],栈2的底在V[m],则栈满的条件是()。
A、|top[2]top[1]|=0
B、top[1]+1=top[2]
C、top[1]+top[2]=m
D、top[1]=top[2]
33.(2.5分)栈在()中应用。
A、递归调用
B、子程序调用
C、表达式求值
D、A,B,C
34.(2.5分)表达式a*(b+c)d的后缀表达式是()
A、abcd*+
B、abc+*d
C、abc*+d
D、+*abcd
35.(2.5分)设计一个判别表达式中左,右括号是否配对出现的算法,采用()数据结构最佳。
A、线性表的顺序存储结构
B、队列
C、线性表的链式存储结构
D、栈
36.(2.5分)用不带头结点的单链表存储队列时其队头指针指向队头结点其队尾指针指向队尾结点,则在进行删除操作时()。
A、仅修改队头指针
B、仅修改队尾指针
C、队头、队尾指针都要修改
D、队头队尾指针都可能要修改
37.(2.5分)递归过程或函数调用时,处理参数及返回地址,要用一种称为()的数据结构。
A、队列
B、多维数组
C、栈
D、线性表
38.(2.5分)假设以数组A[m]存放循环队列的元素其头尾指针分别为front和rear,则当前队列中的元素个数为()。
A、(rearfront+m)%m
B、rearfront+1
C、(frontrear+m)%m
D、(rearfront)%m
39.(2.5分)循环队列A[0..m1]存放其元素值,用front和rear分别表示队头和队尾,则当前队列中的元素数是()。
A、(rearfront+m)%m
B、rearfront+1
C、rearfront1
D、rearfront
40.(2.5分)循环队列存储在数组A[0..m]中,则入队时的操作为()。
A、rear=rear+1
B、rear=(rear+1)mod(m1)
C、rear=(rear+1)modm
D、rear=(rear+1)mod(m+1)

更多学习资料请登录www.openhelp100.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|www.openhelp100.com ( 冀ICP备19026749号-1 )

GMT+8, 2024-11-25 12:33

Powered by openhelp100 X3.5

Copyright © 2001-2024 5u.studio.

快速回复 返回顶部 返回列表