计算机软件技术基础.docx
- 文档编号:7666298
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:12
- 大小:30.70KB
计算机软件技术基础.docx
《计算机软件技术基础.docx》由会员分享,可在线阅读,更多相关《计算机软件技术基础.docx(12页珍藏版)》请在冰豆网上搜索。
计算机软件技术基础
第1章预备知识
绿皮书:
176算法的有穷性是指算法程序的运行时间是有限的(P7)
155算法就是一组严谨的定义运算顺序的规则,并且每一个规则都是有效的且是明确的,次顺序将在有限的次数下终止(P8)
10.算法的时间复杂度,是指执行算法所需要的计算工作量。
(P13)
21算法是计算机求解问题的一个运算序列的步骤性描述。
作为一个算法应具有以下几个基本特征:
能行性、确定性、有穷性、拥有足够的情报(P7)
23.算法的复杂度可以分为时间复杂度和空间复杂度,其中最能表征算法快慢的是最坏情况时间复杂度(P13)
152一个算法的空间复杂度,一般是指执行这个算法所需要的内存空间一个算法所占用的内存空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间。
其中额外空间包括算法程序执行过程中的工作单元以及某种数据结构所需要的附加存储空间(P15)
153所谓减半,是指将问题的规模减半,而问题的性质不变。
所谓递推,是指重复减半的过程。
减半递推法是工程商常用的分治法(P11)
43算法指的是解题方案的准确而完整的描述(P6)
44算法的时间复杂度是指算法在执行过程中所需要的基本运算次数(P13)
84.递归是一种将问题逐层分解的过程,实际上并没有对问题进行求解,而只是当解决了最后那些最简单的问题后,再沿着原来分解的逆过程逐步进行综合,这就是递归的基本思想。
(P10)
113设一个有序的单链表中有n个结点,现要求插入一个新结点后使得单链表仍然保持有序则该操作的时间复杂度为O(n)(P13)
145设一维数组中有n个数组元素,则读取第i个数组元素的平均时间复杂度为O
(1)
第2章基本数据结构极其运算
116数据的逻辑结构是指反映数据元素之间逻辑关系的数据结构(P17)
137循环队列就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间,供队列循环使用。
(P41)
11.在实际存储稀疏矩阵的时候,只存储非零元素,而大量的零元素不存储,这就是稀疏矩阵的压缩存储。
(P86)
17研究数据结构就是研究数据的逻辑结构、存储结构及数据在运算上的实现(P16)
55数据结构的定义为(D,R),其中D是所表示的集合是数据元素(P17)
74数据结构是指相互关联数据元素的集合(P17)
109满二叉树是指这样一种二叉树:
除最后一层外,每一层上的所有节点都有两个子节点,这就是说,在满二叉树中,每一层上的节点数都达到最大值。
(P116)
119设树中度为1,2,3,4的结点个数分别是4,2,1,1。
则树中有叶结点个数8(P113)
177设在一棵度数为3的树中,度数为3的结点数有2个,度数为2的结点数有1个,度数为1的结点数有2个,那么度数为0的结点数为6(P113)
128在二叉排序树中插入一个结点的时间复杂度为O(n)(P196)
133设某二叉树中度数为0的结点数为N0,度数为1的结点数为Nl,度数为2的结点数为N2,则下列等式成立的是N0=N2+1(P115)
24.在一棵深度为5的完全二叉树中,至多含有度为1的结点是1(P116)
26在一棵深度为5的完全二叉树中,至少含有节点数目16(P116)
46深度为m的二叉树最多的结点数为2m—1(P115)
二叉树的第k层上,最多有2k—1个结点
任何一颗二叉树,若2度结点数为n2,则叶子数n0=n2+1
150二叉树是一种有用的非线性结构。
特点:
1、非空二叉树只有一个根节点。
2、每个结点最多有两棵子树,且分别称为该结点的左子树与右子树。
(P115)
164设输入序列是1、2、3、……、n,经过栈的作用后输出序列的第一个元素是n,则输出序列中第i个输出元素是n+1-i(P31)
25.堆栈是一种什么样的数据结构先进后出的环状结构(P31)
45栈是按“先进后出”组织数据(P31)
107有A、B、C、D四个元素依次入栈,假设栈足够大,且已入栈的元素可以在任意时刻出栈,以下可能的出栈序列是BACD
131设用链表作为栈的存储结构则退栈操作必须判别栈是否为空(P33)
27队列是一种先进先出的线性表(P40)
102设循环队列的容量为70(序号为1-70),现经过一系列的入队与退队运算后,有front=67,rear=4,问循环队列的元素个数是7(P41)
29横向优先遍历(广度优先搜索)会用到数据结构(循环)队列(P148)
31一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是108(P22)
33完全二叉树共有1000个结点,则度为2的结点为499(P117)
答:
2k≤1000,所以编号为500的结点的左子结点编号为1000,故度为2的结点为499。
144在一棵深度为5的完全二叉树中,至多含有31个节点。
(P117)
42二叉树不属于线性数据结构(P20)
48.数据的存储结构反映了数据在计算机中的存储方式
59.用链表表示线性表的优点是便于插入与删除(P56)
82中序遍历二叉排序树所得到的序列是有序序列。
(P118)
83在图的邻接表中用顺序存储结构存储表头结点的优点是只要随机查找顺序存储空间,就可以找到该节点的所有后件所链接成的单链表。
(P141)
85.前序遍历是指在访问根节点,遍历左子树与遍历右子树这三者中,首先访问根节点,然后遍历左子树,最后遍历右子树。
因此,前序遍历二叉树的过程是一个递归的过程(P118)
101设栈S和队列Q的初始状态均为空,元素X1、X2、X3、X4、X5、X6依次入栈,出栈的元素则进入队列Q,若元素的出队顺序为X3、X2、X5、X6、X4、X1,则栈的容量至少是3。
103一个按行存储的下三角矩阵,采用压缩存储,首地址是100,每个元素占2个字节,第2行,第4列的元素地址是不存在(P83)
117若对上三角矩阵采用以列为主的压缩存储,已知第1行第1列元素的存储地址为100,每个元素的长度为2,则第6行第8列元素的存储地址为166(P83)
答:
总共需存储的的元素个数为n(n+1)/2,8*9/2=36,36*2=72,72-6=66所以存储地址为100+66=166
105有向图的邻接表中,顶点V的出度是V出边表中的表结点数(P138)
108稀疏矩阵还可以用十字链表表示。
在用十字链表结构表示稀疏矩阵时,矩阵中的每一个非零元素对应一个节点,每个节点有五个域:
行域、列域、值域、向下域与向右域。
行域和列域分别存放非零元素所在的行号与列好,值域存放非零元素的值,向下域指示同一列中下一个非零元素的存储节点序号,向右域指示同一行中下一个非零元素的存储节点序号。
(P107)
129设某有向图的邻接表中有n个表头结点和m个表结点,则该图中有向边数目为m(P141)
147设某无向图中有n个顶点e条边,则该无向图中所有顶点的入度之和为2e(P138)
第3章查找与排序技术
134设有序顺序表中有n个数据元素,则利用对分查找法查找数据元素X的最多比较次数不超过log2n+1(P153)
114设有序表中有1000个元素,则用对分查找查找元素X最多需要比较10次。
(P153)
答:
在最坏情况下,对分查找只需要比较Log2n次,即log21000=lg1000/1g2
115对有20个元素的非递减有序表作对分查找,所需要查找的元素位于序列的第18个元素,则查找过程中的比较序列为10,15,18(P153)
161分块查找又称索引顺序查找。
它是一种顺序查找的改进方法,用于在分块有序表中进行查找,查找分两步进行,首先用对分查找查找索引表,以便确定被查元素所在的子表然后在相应的子表中用顺序查找法进行具体的查找。
(P157)
157对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K)=K%9作为散列函数,则散列地址为1的元素有个数是4,分别是55,64,46,10(P158)【散列:
哈希】
15哈希表技术的关键是要处理好表中元素的冲突问题。
(P163)
138具有n个元素的序列(h1,h2,...,hn),当且仅当满足
或
(i=1,2,...,n/2)时称之为堆。
(P187)
28对长度为n的关键字序列进行堆排序时间复杂度为O(nlog2n)(P188)
32将无序序列中的各元素依次插入到已经有序的线性表中,该排序方法称为插入排序(P184)
112设一组初始记录关键字序列为(50,40,95,20,15,70,60,45),则以增量d=4的一趟希尔排序结束后前4条记录关键字为15,40,60,20(P185)
130设一组初始记录关键字序列为(345,253,674,924,627),则用基数排序需要进行3趟的分配和回收才能使得初始关键字序列变成有序序列。
(P192)
答:
253,674,924,345,627
253,924,627,345,674
253,345,627,674,924
132归并排序的计算工作量为O(nlog2n)(P190)
160二叉排序树是指满足下列条件的二叉树:
左子树上的所有结点值均小于根结点值;右子树上的所有结点值均不小于根结点值;左右子树也满足上述两个条件。
(P194)
165设一组初始记录关键字序列为(45,80,55,40,42,85),则以第一个记录关键字45为基准而得到一趟快速排序的结果是42,40,45,55,80,85(P182)
178顺序查找最坏情况的时间复杂度为Tp=O(n);对分查找最坏情况的时间复杂度为Tp=O(log2n);二叉排序树的查找效率与树的形态有关,若树的形态为“单枝”,二叉排序树的查找就“退化”为顺序查找;若树的形态“平衡”,二叉排序树的查找与对分查找类似;所以二叉排序树查找的最坏情况时间复杂度仍然为Tp=O(n),对分查找逻辑上就是一棵平衡的二叉树,最坏情况时间复杂度为Tp=O(log2n)。
(P199)
第4章资源管理技术
5存储管理一般应该包括以下一些功能:
地址变换、内存分配、存储共享与保护、存储器扩充。
(P246)
8操作系统的功能和任务主要有:
处理机管理、存储器管理、设备管理、文件管理、作业管理。
(P225)
14操作系统的功能和任务主要有以下方面:
处理机管理、存储器管理、设备管理、文件管理、作业管理。
(P226)
22.分时操作系统的特点有同时性独立性及时性交互性(P230)
30对于单CPU的计算机,操作系统是如何实现进程间的并行分时:
在单处理机的系统中,并发程序在微观上只能是交替地运行,但在宏观上可看成是并行的。
(P229)
34操作系统中采用多道程序设计方式能提高CPU和I/O设备的利用效率(P229)
35进程所请求的一次打印输出结束后,将使进程状态从等待态变为就绪态(P236)
36产生系统死锁的原因可能是由于多个进程竞争,资源出现了循环等待(P239)
37.文件系统的主要目的是实现对文件的按名存取(P249)
51.在分页存储管理中,主存为64KB,被分成16块,标记为0~15,某作业为4页,标记为0~3,分别被装入主存的3,9,7,13块,则该作业每一页在主存中的首地址分别为12k,36k,28k,52k(P247)
56如果允许不同用户的文件可以具有相同的文件名,通常采用多级目录结构来保证按名存取的安全(P252)
88.并发性是指若干事件在同一时间间隔内发生(P232)
89.界地址存储管理要求对每一个作业分配的内存单元是地址连续(P246)
110分页存贮管理方式中,作业空间被划分为页,实际的内存空间被划分为块,其中页的大小与块的大小相等。
当某个作业被调入内存运行时,由重定位机构将作业中的页映射到内存空间对应的块上,从而实现地址的转换。
(P247)
90.在文件系统中,索引文件结构中的索引表是用来指示逻辑记录和物理块之间对应关系的(P250)
98在文件系统中,要求物理块必须连续的物理文件是连续文件
179.死锁的四个必要条件是
1)资源的独占使用
2)资源的非抢占分配
3)资源的部分分配
4)对资源的循环等待(P239)
99根据死锁产生的四个必要条件,可采取几种措施预防死锁,采取资源的静态预分配策略,是破坏了资源的部分分配条件(P239)
92一次只允许一个进程使用的资源叫做临界资源。
(P240)
136在一段时间内只允许一个进程访问的资源,称为临界资源
97进程:
行进中的程序(P235)
159进程是指一个具有一定独立功能的程序关于某个数据集合的一次运行活动。
简单地说,进程是可以并发执行得程序的执行过程,它是控制程序管理下的基本的多道程序单位。
(P235)100进程已具备运行条件,但由于没有获得CPU而不能运行时所处的状态为就绪状态(P236)
163进程调度又称低级调度或微调度它的主要任务是,按照某种原则将CPU分配给处于就绪状态的进程,实现CPU在进程之间的转换。
进程调度策略的优劣和CPU在进程之间转换的速度对整个系统性能都有很大影响。
(P244)
118在页式存储管理系统中,页表内容如下所示,
页号块号
02
11
28
若页大小为1K,逻辑地址的页号为2,页内地址为451,转换成的物理地址为8643(旧P83)答:
页面和块的大小是1024个字节,由于块的长度都是等长的。
所以绝对地址=块号×块长+页内相对地址,
故逻辑地址=8×1024+451=8643
124两个进程合作完成一个任务,在并发执行中,一个进程要等待其合作伙伴发来信息,或者建立某个条件后再向前执行,这种关系是进程的同步(P241)
125能由P和V操作所改变的整型变量称为信号量(P242)
135采用轮转法调度是为了多个终端都能得到系统的及时响应(P旧65、70)
139进程控制块是由系统为每个进程分别建立的,用以记录对应进程的程序和数据的存储情况,记录进程的动态信息系统根据进程控制块而感知进程的存在,根据进程控制块中的信息对进程实施控制管理。
当进程结束时,系统即收回它的进程控制块,进程也随之消亡。
(P237)
156所谓多道是指在计算机内存中存入多个用户作业,批处理是指这样一种操作方式,在外存中存入大量的后备作业,作业的运行完全由系统控制。
(P229)
174若当前进程因时间片用完而让出处理机时,该进程应转变为就绪状态(P236)
175在分页存储管理系统中,从页号到物理块号的地址映射是通过页表实现的(P247)
180一般来说,一个作业的大小不能超过实际内存空间的大小,实际内存空间是用户进行程序设计时可以利用的最大空间。
但在实际上,根据程序的时间局部性和空间局部性,在作业运行过程中可以只让当前用到的信息进入内存,其他当前未用的信息留在外存;而当作业进一步需要用到外存中的信息时,再把已经用过但暂时还不会用到的信息换到外存,把当前要用的信息换到已空出的内存区中,从而给用户提供了一个比实际内存空间大得多的地址空间。
对用于来说,这个特别大的地址空间就好像是可以自由使用的内存空间一样。
这种大容量的地址空间并不是真实的存储空间,而是虚拟的,因此称这样的存储器为虚拟存储器。
(P248)
第5章数据库设计技术
166数据库管理系统是在操作系统支持下的系统软件(P259)
3数据库管理系统具有如下功能:
定义数据库、管理数据库、建立和维护数据库、数据通信。
(P259)
4实体之间的联系可以归结为三类:
一对一的联系、一对多的联系、多对多的联系。
(P264)
12数据库设计过程主要有:
需求分析、概念结构设计、逻辑结构设计、物理结构设计。
(P275)
13目前常用的数据模型有三种:
层次模型、网状模型和关系模型。
(P265)
16数据库系统的构成为:
数据库集合、计算机硬件系统、数据库管理员和用户与数据库管理系统及相关软件(P261)
18在数据库设计中,将E-R图转换成关系数据模型的过程属于逻辑设计阶段(P280)
19关系数据库系统中所使用的数据结构是二维表(P266)
20DBMS指的是数据库管理系统(P259)
38.数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是DBS包含DB和DBMS(P257)
104DBA是数据库管理员的缩写;操作系统OS;(P261)
39.数据库技术的根本目标是要解决数据的共享问题(P258)
40.在E-R图中,用来表示实体之间联系的图形是菱形(P276)
67在E-R图中,用来表示实体的图形是矩形;用椭圆表示实体的属性。
149E-R图是指实体-联系图,是设计概念模型的有力工具。
在E-R图中,用矩形框表示实体,椭圆形框表示实体的属性,菱形框表示实体间的联系,实体与属性之间用无向边连接,实体与联系之间也用无向边连接。
68排序不属于基本关系运算(P268)
69设有关系R1和R2,经过关系运算得到结果S,则S是一个关系(P268)
70从数据库的整体结构看,数据库系统采用的数据模型有层次模型、网状模型和关系模型(P265)
52设关系R和S具有相同的模式,则R-(R-S)等于R∩S(P268)
57在学生管理系统的关系数据库中,存取一个学生信息的数据单位是记录(P263)
58一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员、与实体计算机之间的联系是多对多(P264)
142如果一个班只能有一个班长和一个副班长,而且班长和副班长都不能同时担任其它班的班长和副班长,班级和班长两个实体之间的关系属于一对一联系
66”商品”与”顾客”两个实体集之间的联系一般是多对多
87.n个集合的笛卡尔积是以n元组为元素的集合,而每个n元组中的第i个分量取自于第i个集合Di。
(P269)
93数据模型反映了实体内部以及实体之间的联系,因此是数据库设计的核心。
(P264)
162数据模型是对客观事物及其联系得数据描述,它反映了实体内部以及实体与实体之间的联系,因此数据模型是数据库设计的核心(P264)
60.操作对象只能是一个表的关系运算是选择和投影(P270)
61.数据库技术的根本目标是为了有效的对数据进行处理(解决数据的共享问题。
P258)
127数据库系统与文件系统的主要区别是文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决(P258)
111数据的最小单位是数据项(P263)
126关系数据库的任何检索操作都是由三种基本关系代数【选择、投影、联接】运算组合而成的,这三种基本运算不包括比较(P270)
158有三个关系R、S和T如下:
R
B
C
D
a
0
k1
b
1
n1
S
B
C
D
f
3
h2
a
0
k1
n
2
x1
T
B
C
D
a
0
k1
由关系R和S通过运算得到关系T,则所使用的运算为交(P268)
170数据字典是数据库的信息系统,是由关于数据库中数据描述信息组成的库,也称之为描述数据库。
数据字典的编制过程贯穿数据库设计的各个阶段,从收集信息开始着手编制,随着设计工作的展开,数据字典逐步形成。
(P282)
第6章编译技术概述
1.编译程序一般要包括以下几个程序模块:
词法分析程序、语法分析程序、加工程序、优化修饰部分、装配程序或链接程序。
(P286)
2编译程序所做的工作就是翻译工作。
96编译程序是一种翻译程序
151编译程序是一种将用高级语言编写的源程序翻译成机器语言程序的实用程序(P285)
7一个表达式的波兰表示就是后缀表示。
(P297)
9编译程序所做的工作是翻译工作。
41.词法分析器用于识别单词 (P290)
62.用高级语言编写的程序经编译后产生的程序叫目标程序(P285)
79语法分析和加工的主要任务有以下几项:
识别出各种类型的语句,并进行语法检查;语法的加工处理;编译程序工作的最后结果是产生目标程序和半目标程序。
(P303)
80编译的过程一般包括以下几个步骤:
输入源程序;对以机内码表示的源程序进行词法分析,辨认出一个个单词符号;根据源语言的语法规则进行语法分析,对各种语法成分根据语义进行必要的加工处理;在实际运行前,对目标程序各部分进行链接装配。
(P285)
81后缀算式923+-102/-的值为-1。
(P297)
答:
9-(2+3)-10/2=-1
94中缀算式(3+4X)-2Y/3对应的后缀算式为34X*+2Y*3/-(P297)
173语法分析程序是编译程序的主要组成部分。
它的主要任务是根据不同类型的语句转到相应的处理程序去进行处理。
在识别语句类型以及处理过程中,还要做出必要的语法检查,以便查处源程序中不符合语法规则的各种语法错误(P303)
第7章应用软件设计与开发技术
软件是程序、数据与相关文档的集合
120软件生命周期包括软件定义期,软件开发期,软件维护期。
软件定义期。
包括问题定义、可行性研究和需求分析三个阶段。
软件开发期。
包括系统设计、详细设计、编码和测试四个阶段。
软件维护期。
即运行维护阶段。
【注:
软件测试期不属于软件生命周期。
】
6面向对象技术具有许多明显的特点,主要体现在可重用性、可维护性、表示方法的一致性。
(P342)
50.在结构化分析方法中,用以表达系统内部数据的流动情况的工具有数据流程图(P321)
63.软件生命周期可分为定义阶段,开发阶段和维护阶段。
详细设计属于开发阶段 (P311)
64软件设计中,有利于提高模式独立性的一个准则是高内聚低藕合(P327)
65完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的方法是黑箱测试法(P336)
71软件调试技术(策略)包括演绎法(P338)
72在详细设计阶段,经常采用的工具有PAD(P316)
73使用白箱测试方法时,确定测试数据应根据对程序内部逻辑结构的分析来选取测试用例。
(P334)
76测试的目的是暴露错误,评价程序的可靠性。
(P331)
77面向对象技术主要包括三个方面:
面向对象的分析(OOA),面向对象的设计(OOD),面向对象的实现(OOI)。
(P341)
78原型法将软件开发分为四个步骤:
确定用户的基本要求、开发初始原型、实现并运行原型、修改并完善原型。
(P339)
86.数据流程图简称DFD,是结构化分析方法最主要的一种图形工具,它从数据加工的角度,以图形方式描述信息处理系统的逻辑结构,能比较直观的描述信息处理中的业务情况。
(P322)
3.结构化程序设计原则是模块化、高内聚、低耦合(P324)【可封装不属于结构化程序设计原则】
121软件程序的3种基本控制结构是顺序、选择和循环(P314)
122面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是使用现实世界的概念抽象地思考问题从而自然地解决问题(P341)
123软件交付使用后还需要进行维护(P313)
140白箱测试是根据对程序内部的逻辑结构分析来选取测试用例。
由于测试用例对程序逻辑覆盖的程度决定了测试完全性的程度,因此白箱测试也称为逻辑覆盖测试。
(P334)
141软件支援环境是指在宿主硬件和宿主软件的基础上,用于辅助、支援其他软件的研制和维护的一组软件。
(2分)大型软件的研制和维护是一种费用大、耗时多的工程,软件支援环境对于改进软件质量、提高软件生产率起到很重要的作用。
(P313)
148软件工程是指采用工程的概念、原理、技术和方法指导软件的开发与维护。
(P310)
154设计软件原型是一个迭代过程,它以初始
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机软件 技术 基础
![提示](https://static.bdocx.com/images/bang_tan.gif)