导航:首页 > 源码编译 > 二级试题算法设计只考虑什么

二级试题算法设计只考虑什么

发布时间:2023-01-10 08:33:04

㈠ 2012年江苏省C++二级考试试卷及答案

一、选择题(每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是()。
A)算法就是程序
B)设计算法时只需要考虑数据结构的设计
C)设计算法时只需要考虑结果的可靠性
D)以上三种说法都不对

(2)下列关于线性链表的叙述中,正确的是()。
A)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致
B)各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续
C)进行插入与删除时,不需要移动表中的元素
D)以上三种说法都不对

(3)下列关于二叉树的叙述中,正确的是()。
A)叶子结点总是比度为2的结点少一个
B)叶子结点总是比度为2的结点多一个
C)叶子结点数是度为2的结点数的两倍
D)度为2的结点数是度为1的结点数的两倍

(4)软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是()。
A)学生成绩管理系统
B)C语言编译程序
C)UNIX操作系统
D)数据库管理系统

(5)某系统总体结构图如下图所示:

该系统总体结构图的深度是()。
A)7
B)6
C)3
D)2

(6)程序调试的任务是()。
A)设计测试用例
B)验证程序的正确性
C)发现程序中的错误
D)诊断和改正程序中的错误

(7)下列关于数据库设计的叙述中,正确的是()。
A)在需求分析阶段建立数据字典
B)在概念设计阶段建立数据字典
C)在逻辑设计阶段建立数据字典
D)在物理设计阶段建立数据字典

(8)数据库系统的三级模式不包括()。
A)概念模式
B)内模式
C)外模式
D)数据模式

(9)有三个关系R、S和T如下:

则由关系R和S得到关系T的操作是()。
A)自然连接
B)差
C)交
D)并

(10)下列选项中属于面向对象设计方法主要特征的是()。
A)继承
B)自项向下
C)模块化
D)逐步求精
(11)在对函数进行原型声明时,下列语法成分中,不需要的是()。
A)函数返回类型
B)函数参数列表
C)函数名
D)函数体

(12)下列关于this指针的描述中,正确的是()。
A)类的成员函数都有this指针
B)类的友元函数都有this指针
C)任何与类相关的函数都有this指针
D)类的非静态成员函数都有this指针

(13)

(14)为类Matrix重载下列运算符时,只能作为Matrix类成员函数重载的运算符是()。
A)+
B)=
C)<<
D)++

(15)下列关于模板的描述中,错误的是()。
A)类模板的成员函数都是模板函数
B)函数模板是一种参数化类型的函数
C)满足一定条件时可以省略模板实参
D)模板形参只能由关键字typename声明

(16)要利用C++流实现输入输出的各种格式控制,必须在程序中包含的头文件是()。
A)fstream
B)istreara
C)ostream
D)iomanip

(17)下列选项中,不是C++关键字的是()。
A)class
B)functi013
C)friend
D)virtual

(18)若有定义语句“int i=2,j=3;”,则表达式i/j的结果是()。
A)0
B)0.7
C)0.66667
D)0.66666667

(19)

㈡ 设计一个好的算法通常要考虑哪些要求

数据结构中评价一个好的算法,应该从四个个方面来考虑,分别是:

一、算法的正确性。

二、算法的易读性。

三、是算法的健壮性。

四、是算法的时空效率(运行)。

算法的设计取决于数据(逻辑)结构,算法的实现取决于所采用的存储结构。数据的存储结构本质上是其逻辑结构在计算机存储器中的实现。为了全面反映一个数据的逻辑结构,它在内存中的映像包括两个方面,即数据元素之间的信息和数据元素之间的关系。

不同的数据结构有相应的操作。数据的操作是在数据的逻辑结构上定义的操作算法,如检索、插入、删除、更新和排序。

(2)二级试题算法设计只考虑什么扩展阅读

算法可大致分为基本算法、数据结构的算法、数论与代数算法、计算几何的算法、图论的算法、动态规划以及数值分析、加密算法、排序算法、检索算法、随机化算法、并行算法,厄米变形模型,随机森林算法。

算法可以宏泛的分为三类:

一、有限的,确定性算法 这类算法在有限的一段时间内终止。他们可能要花很长时间来执行指定的任务,但仍将在一定的时间内终止。这类算法得出的结果常取决于输入值。

二、有限的,非确定算法 这类算法在有限的时间内终止。然而,对于一个(或一些)给定的数值,算法的结果并不是唯一的或确定的。

三、无限的算法 是那些由于没有定义终止定义条件,或定义的条件无法由输入的数据满足而不终止运行的算法。通常,无限算法的产生是由于未能确定的定义终止条件。

㈢ 计算机二级考试MS Office题库及答案

1、 对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是

A) 快速排序 B) 冒泡排序 C) 直接插入排序 √D) 堆排序

2、下列关于栈的叙述正确的是

A) 栈按""先进先出""组织数据 √B) 栈按""先进后出""组织数据

C) 只能在栈底插入数据 D) 不能删除数据

3、算法的空间复杂度是指

√A) 算法在执行过程中所需要的计算机存储空间

B) 算法所处理的数据量

C) 算法程序中的语句或指令条数 D) 算法在执行过程中所需要的临时工作单元数

4、某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是

A) 10 B) 8 √C) 6 D) 4

5、 算法的有穷性是指

√A) 算法程序的运行时间是有限的 B) 算法程序所处理的数据量是有限的

C) 算法程序的长度是有限的 D) 算法只能被有限的用户使用

6、下列叙述中正确的是

A) 算法复杂度是指算法控制结构的复杂程度

B) 算法复杂度是指设计算法的难度

C) 算法的时间复杂度是指设计算法的工作量

√D) 算法的复杂度包括时间复杂度与空间复杂度

7、下列数据结构中,属于非线性结构的是

A) 循环队列 B) 带链队列 √C) 二叉树 D) 带链栈

8、一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是

A) 12345ABCDE √B) EDCBA54321 C) ABCDE12345 D) 54321EDCBA

9、下列叙述中正确的是

A) 循环队列有队头和队尾两个指针,因此,循环队列是非线性结构

B) 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况

C) 在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况

√D) 循环队列中元素的个数是由队头指针和队尾指针共同决定

10、下列叙述中正确的是

√A) 顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的

B) 顺序存储结构只针对线性结构,链式存储结构只针对非线性结构

C) 顺序存储结构能存储有序表,链式存储结构不能存储有序表

D) 链式存储结构比顺序存储结构节省存储空间

11、对于循环队列,下列叙述中正确的是

A) 队头指针是固定不变的 B) 队头指针一定大于队尾指针

C) 队头指针一定小于队尾指针 √D) 队头指针可以大于队尾指针,也可以小于队尾指针

12、下列排序方法中,最坏情况下比较次数最少的是

A) 冒泡排序 B) 简单选择排序 C) 直接插入排序 √D) 堆排序

13、下列叙述中正确的是

A) 栈是""先进先出""的线性表 B) 队列是""先进后出""的线性表

C) 循环队列是非线性结构 √D) 有序线性表既可以采用顺序存储结构,也可以采用链式存储结构

14、支持子程序调用的数据结构是

√A) 栈 B) 树 C) 队列 D) 二叉树

15、下列数据结构中,能够按照""先进后出""原则存取数据的是

A) 循环队列 √B) 栈 C) 队列 D) 二叉树

16、下列叙述中正确的是

A) 线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的

√B) 线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构

C) 线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构

17、下列叙述中正确的是

A) 栈是一种先进先出的线性表 B) 队列是一种后进先出的线性表

C) 栈与队列都是非线性结构 √D) 栈与队列都是线性结构

18、一棵完全二叉树共有360个结点,则在该二叉树中度为1的结点个数为

A) 0 √B) 1 C) 180 D) 181

19、算法的时间复杂度是指

A) 设计该算法所需的工作量 B) 执行该算法所需要的时间

√C) 执行该算法时所需要的基本运算次数

D) 算法中指令的条数

20、下列关于栈叙述正确的是

√A) 栈顶元素最先能被删除 B) 栈顶元素最后才能被删除

C) 栈底元素永远不能被删除

21、下列叙述中正确的是

A) 在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化

B) 在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化

√C) 在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化

22、某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点

在第1层)

A) 3 B) 4 C) 6 √D) 7

23、设循环队列存储空间为Q(1:50),初始状态为front=rear=50。经过一系列入队和退队操作后,front=rear=25,则该循环队列中元素个数为

A) 26 B) 25 C) 24 √D) 0或50

24、下列叙述中正确的是

A) 算法就是程序 B) 设计算法时只需要考虑数据结构的设计C) 设计算法时只需要考虑结果的可靠性√D) 以上三种说法都不对

25、下列叙述中正确的是

A) 有一个以上根结点的数据结构不一定是非线性结构

√B) 只有一个根结点的数据结构不一定是线性结构

C) 循环链表是非线性结构 D) 双向链表是非线性结构

26、下列关于二叉树的叙述中,正确的是

A) 叶子结点总是比度为2的结点少一个

√B) 叶子结点总是比度为2的结点多一个

C) 叶子结点数是度为2的结点数的两倍

D) 度为2的结点数是度为1的结点数的两倍

27、下列各组的排序方法中,最坏情况下比较次数相同的是

√A) 冒泡排序与快速排序 B) 简单插入排序与希尔排序

C) 堆排序与希尔排序 D) 快速排序与希尔排序

28、下列叙述中正确的是

A) 循环队列是队列的一种链式存储结构

√B) 循环队列是队列的一种顺序存储结构

C) 循环队列是非线性结构 D) 循环队列是一种逻辑结构

29、下列关于线性链表的叙述中,正确的是

A) 各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致

B) 各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续

√C) 进行插入与删除时,不需要移动表中的元素

30、一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为

√A) 16 B) 10 C) 6 D) 4

31、设循环队列存储空间为Q(1:50)。初始状态为front=rear=50。经过一系列入队和退队操作后,front=14,rear=19,则该循环队列中的元素个数为

A) 46 B) 45 C) 6 √D) 5

32、下列链表中,其逻辑结构属于非线性结构的是

√A) 二叉链表 B) 循环链表 C) 双向链表 D) 带链的栈

33、设循环队列的存储空间为Q(1: 35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为

A) 15 B) 16 C) 20 √D) 0或35

34、下列关于栈的叙述中,正确的是

A) 栈底元素一定是最后入栈的元素 B) 栈顶元素一定是最先入栈的元素

√C) 栈操作遵循先进后出的原则

35、设二叉树共有150个结点,其中度为1的结点有10个,则该二叉树中的叶子结点数为

A) 71 B) 70 C) 69 √D) 不可能有这样的二叉树

36、下列叙述中正确的是

√A) 程序执行的效率与数据的存储结构密切相关

B) 程序执行的效率只取决于程序的控制结构

C) 程序执行的效率只取决于所处理的数据量

37、下列与队列结构有关联的是

A) 函数的递归调用 B) 数组元素的引用 C) 多重循环的执行 √D) 先到先服务的作业调度

38、一个栈的初始状态为空。现将元素1,2,3,A,B,C依次入栈,然后再依次出栈,则元素出栈的顺序是

A) 1,2,3,A,B,C B) C,B,A,1,2,3 √C) C,B,A,3,2,1 D) 1,2,3,C,B,A

39、下列叙述中正确的是

A) 一个算法的空间复杂度大,则其时间复杂度也必定大

B) 一个算法的空间复杂度大,则其时间复杂度必定小

C) 一个算法的时间复杂度大,则其空间复杂度必定小

√D) 算法的时间复杂度与空间复杂度没有直接关系

40、下列叙述中正确的'是

√A) 循环队列中的元素个数随队头指针与队尾指针的变化而动态变化

B) 循环队列中的元素个数随队头指针的变化而动态变化

C) 循环队列中的元素个数随队尾指针的变化而动态变化

41、一棵二叉树中共有80个叶子结点与70个度为1的结点,则该二叉树中的总结点数为

A) 219 √B) 229 C) 230 D) 231

42、对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为

A) 9 B) 10 √C) 45 D) 90

43、下列叙述中正确的是

A) 算法的效率只与问题的规模有关,而与数据的存储结构无关

√B) 算法的时间复杂度是指执行算法所需要的计算工作量

C) 数据的逻辑结构与存储结构是一一对应的

D) 算法的时间复杂度与空间复杂度一定相关

44、下列叙述中正确的是

A) 线性表链式存储结构的存储空间一般要少于顺序存储结构

B) 线性表链式存储结构与顺序存储结构的存储空间都是连续的

√C) 线性表链式存储结构的存储空间可以是连续的,也可以是不连续的

45、某二叉树共有12个结点,其中叶子结点只有1个。则该二叉树的深度为(根结点在第1层)

A) 3 B) 6 C) 8 √D) 12

46、对长度为n的线性表作快速排序,在最坏情况下,比较次数为

A) n B) n-1 C) n(n-1) √D) n(n-1)/2

47、下列叙述中正确的是

A) 有且只有一个根结点的数据结构一定是线性结构

B) 每一个结点最多有一个前件也最多有一个后件的数据结构一定是线性结构

C) 有且只有一个根结点的数据结构一定是非线性结构

√D) 有且只有一个根结点的数据结构可能是线性结构,也可能是非线性结构

48、下列叙述中错误的是

A) 在双向链表中,可以从任何一个结点开始直接遍历到所有结点

B) 在循环链表中,可以从任何一个结点开始直接遍历到所有结点

√C) 在线性单链表中,可以从任何一个结点开始直接遍历到所有结点

D) 在二叉链表中,可以从根结点开始遍历到所有结点

49、某二叉树共有13个结点,其中有4个度为1的结点,则叶子结点数为

√A) 5 B) 4 C) 3 D) 2

50、设栈的顺序存储空间为S(1: 50),初始状态为top=0。现经过一系列入栈与退栈运算后,top=20,则当前栈中的元素个数为

㈣ 计算机二级选择题干货(五)——数据结构和算法

1、线性表、栈和队列等数据结构所表达和处理的数据以线性结构为组织形式。栈是一种特殊的线性表,这种线性表只能在固定的一端进行插入和删除操作,允许插入和删除的一端称为栈顶,另一端称为栈底。一个新元素只能从栈顶一端进入,删除时,只能删除栈顶的元素,即刚刚被插入的元素。所以栈又称后进先出表(Last In First Out);队列可看作是插入在一端进行,删除在另一端进行的线性表,允许插入的一端称为队尾,允许删除的一端称为队头。在队列中,只能删除队头元素,队列的最后一个元素一定是最新入队的元素。因此队列又称先进先出表(First In First Out)。

2、栈和队列都是一种特殊的操作受限的线性表,只允许在端点处进行插入和删除。二者的区别是:栈只允许在表的一端进行插入或删除操作,是一种"后进先出"的线性表;而队列只允许在表的一端进行插入操作,在另一端进行删除操作,是一种"先进先出"的线性表。

3、栈是一种特殊的线性表,这种线性表只能在固定的一端进行插入和删除操作,允许插入和删除的一端称为栈顶,另一端称为栈底。一个新元素只能从栈顶一端进入,删除时,只能删除栈顶的元素,即刚刚被插入的元素。所以栈又称先进后出表(FILO-First In Last Out)。线性表可以顺序存储,也可以链式存储,而栈是一种线性表,也可以采用链式存储结构。

4、栈和队列都是一种特殊的操作受限的线性表,只允许在端点处进行插入和删除。二者的区别是:栈只允许在表的一端进行插入或删除操作,是一种"后进先出"的线性表;而队列只允许在表的一端进行插入操作,在另一端进行删除操作,是一种"先进先出"的线性表。

5、在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化

top=0表示栈空,top=50表示栈满。入栈操作首先将top加1,然后将新元素插入到top指针指向的位置;退栈操作首先将top指针指向的元素赋给一个指定的变量,然后将top减1。栈顶指针top动态反映了栈中元素的变化情况。

6、栈是一种先进后出的线性表,栈实际上也是线性表,只不过是一种特殊的线性表。队列是指允许在一端进行插入、而在另一端进行删除的线性表,队列是一种"先进先出"或"后进后出"的线性表

队列是指允许在一端进行插入、而在另一端进行删除的线性表。它又称为"先进先出"或"后进后出"的线性表,体现了"先来先服务"的原则。

7、带链的队列也是线性链表,在线性链表中指向线性表中的第一个结点的指针称为头指针,头指针为NULL或0时称为空表,指向队尾元素的指针称为尾指针。队列在队尾插入元素,称为入队运算;在队头删除元素,称为退队运算。带链队列在开辟存储空间时,可以按照存储空间地址增大的方向开辟,也可以按照存储空间地址减少的方向开辟。

8、所谓循环队列,就是将队列存储空间的最后一个位置绕到第1个位置,形成逻辑上的环状空间,供队列循环使用。所以循环队列还是属于线性结构。循环队列的头指针front指向队列的第一个元素的前一位置,队尾指针rear指向队列的最后一个元素,循环队列的动态变化需要头尾指针共同反映循环队列的长度是:(sq.rear-sq.front+maxsize)%maxsize,所以循环队列的长度是由队头和队尾指针共同决定的

 在循环队列中,用队尾指针rear指向队列中的队尾元素,用排头指针front指向排头元素的前一个位置。

 循环队列主要有两种基本运算:入队运算与退队运算。每进行一次入队运算,队尾指针就进一。每进行一次退队运算,排头指针就进一。当rear或front的值等于队列的长度+1时,就将rear或front的值置为1。一般情况下,rear大于front,因为入队的元素肯定比出队的元素多。特殊的情况是rear到达数组的上限之后又从数组的低端开始,此时,rear是小于front的。

循环队列就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间,供队列循环使用。在实际应用中,队列的顺序存储结构一般采用循环队列的形式。因此,循环队列不是队列的一种链式存储结构。循环队列是一种存储结构,因此循环队列是一种物理结构,而不是逻辑结构。循环队列是队列的顺序存储结构,因此循环队列是线性结构。

9、循环队列不同于循环链表,循环队列是顺序存储结构,循环链表是链式存储结构。双向链表是链式存储结构,其中每个结点都有左指针和右指针,不同于二叉树结点的左子树指针和右子树指针。非线性结构和线性结构是数据的逻辑结构,顺序和链式是数据的存储结构,例如二叉树是非线性结构,也可以按照层序进行顺序存储。

10、非线性结构的逻辑特征是一个结点元素可能对应多个直接前驱和多个后驱。常见的非线性结构有:树(二叉树等),图(网等)。

11、由于二叉树的存储结构中每一个存储结点有两个指针域,因此,二叉树的链式存储结构也称为二叉链表,二叉链表属于非线性结构。

12、遍历是指不重复的访问所有结点。线性单链表每个结点只有一个指针域,由这个指针只能找到后件结点,但不能找到前件结点。双向链表中的每个结点设置两个指针,左指针指向其前件结点,右指针指向其后件结点。循环链表中增加了一个表头结点,循环链表中的所有结点的指针构成了一个环状链。二叉链表即二叉树的链式存储结构,每个存储结点有两个指针域,左指针域指向该结点的左子结点的存储地址,右指针域指向该结点的右子结点的存储地址。

13、线性表的顺序存储结构具有两个基本特点:(1)线性表中所有元素所占的存储空间是连续的;(2)线性表中各元素在存储空间中是按逻辑顺序依次存放的。

14、循环链表具有以下两个特点:(1)在循环链表中增加了一个表头结点,其数据域为任意或者根据需要来设置,指针域指向线性表的第一个元素的结点。循环链表的头指针指向表头结点。(2)循环链表中最后一个结点的指针域不是空,而是指向表头结点。即在循环链表中,所有结点的指针构成了一个环状链。

15、在循环链表中,只要指出表中任何一个结点的位置,就可以从它出发访问到表中其他所有的结点,而线性单链表做不到这一点。

16、根据二叉树的性质:二叉树第i(i≥1)层上至多有2i-1个结点。

17、所谓满二叉树是指这样的一种二叉树:除最后一层外,每层上的所有结点都有两个子结点。这就是说,在满二叉树中,每一层上的结点数都达到最大值,即在满二叉树的第K层上有2K-1个结点,且深度为m的满二叉树有2m个结点。

18、在任意一颗树中,结点总数=总分支数目+1

19、二叉树的性质:在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。本题中度为2的结点数为n,故叶子结点数为n+1个。

二叉树的性质:在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。

20、在用完全二叉树表示堆,树中所有非叶子结点值均不小于其左右子树的根结点值,因此,堆顶元素必为序列的n个元素中的最大项。

21、作为一个算法,一般应具有以下几个基本特征。

 可行性

 确定性

 有穷性

拥有足够的情报

22、计算机算法是指解题方案的准确而完整的描述

算法的有穷性,是指算法必须在有限的时间内做完,即算法必须能在执行有限个步骤之后终止。

23、希尔排序法的基本思想是:将整个无序序列分割成若干小的子序列分别进行插入排序。所以希尔排序法属于插入类排序,但它对简单插入排序做了很大的改进。

24、快速排序的基本思想是,通过一趟排序将待排序记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,再分别对这两部分记录继续进行排序,以达到整个序列有序;插入排序的基本操作是指将无序序列中的各元素依次插入到已经有序的线性表中,从而得到一个新的序列;选择排序的基本思想是:扫描整个线性表,从中选出最小的元素,将它交换到表的最前面(这是它应有的位置),然后对剩下的子表采用同样的方法,直到表空为止;归并排序是将两个或两个以上的有序表组合成一个新的有序表。

25、在单链表中,增加头结点的目的是______。

头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点目的是为了便于运算的实现。

26、算法分析是指对一个算法的运行时间和占用空间做定量的分析,一般计算出相应的数量级,常用时间复杂度和空间复杂度表示。分析算法的目的就是要降低算法的时间复杂度和空间复杂度,提高算法的执行效率。

27、算法是指解题方案的准确而完整的描述。但算法不等于程序,也不等于计算方法。当然,程序也可以作为算法的一种描述,但程序通常还需要考虑很多与方法和分析无关的细节问题,这是因为在编写程序时要受到计算机系统运行环境的限制。通常,程序的编制不可能优于算法的设计。作为一个算法,一般应具有可行性、确定性、有穷性、拥有足够情报四个基本特征。因此设计算法时不仅仅要考虑结果的可靠性,即不仅考虑算法结果的可行性,还要考虑步骤的确定性,时间和步骤的有穷性等。因此,算法是一组严谨地定义运算顺序的规则,并且每一个规则都是有效的,且是明确的,此顺序将在有限的次数下终止。

28、一个算法通常由两种基本要素组成:一是对数据对象的运算和操作,二是算法的控制结构。因此设计算法时不仅需要考虑数据结构的设计,还要考虑数据的操作和运算及各操作之间的执行顺序。

29、在有向图中,若任意两个顶点都连通,则称该图是强连通图,这样的有向图的形状是环状,因而至少应有n条边。

30、当数据表A中每个元素距其最终位置不远,说明数据表A按关键字值基本有序,在待排序序列基本有序的情况下,采用插入排序所用时间最少。

31、数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构(也称数据的物理结构)。

32、假设线性表的长度为n,则在最坏情况下,冒泡排序需要经过n/2遍的从前往后扫描和n/2遍的从后往前扫描,需要比较次数为n(n-1)/2。快速排序法的最坏情况比较次数也是n(n-1)/2

(1)冒泡排序法:是一种最简单的交换类排序法,它是通过相邻数据元素的交换逐步将线性表变成有序。假设线性表的长度为n,则在最坏情况下,冒泡排序需要经过n/2遍的从前往后的扫描和n/2遍的从后往前的扫描,需要比较的次数为n(n-1)/2次。

 (2)简单插入排序法:在简单插入排序法中,每一次比较后最多移掉一个逆序,因此,这种排序方法的效率与冒泡排序法相同。在最坏情况下,简单插入排序需要n(n-1)/2次比较。

 (3)简单选择排序法:对于长度为n的序列,选择排序需要扫描n-1遍,每一遍扫描均从剩下的子表中选出最小的元素,然后将该最小的元素与子表中的第一个元素进行交换。简单选择排序法在最坏情况下需要比较n(n-1)/2次。

 (4)堆排序法:堆排序的方法为:①首先将一个无序序列建成堆。②然后将堆顶元素(序列中的最大项)与堆中最后一个元素交换(最大项应该在序列的最后)。在最坏情况下,堆排序需要比较的次数为。

 假设线性表的长度为16,那么冒泡排序、直接插入排序、简单选择排序都需要比较120次,而堆排序需要比较64次。

33、对于长度为n的线性表,在最坏的情况下,快速排序所需要的比较次数为n(n-1)/2;冒泡排序所需要的比较次数为n(n-1)/2;直接插入排序所需要的比较次数为n(n-1)/2;堆排序所需要的比较次数为。

34、在进行顺序查找过程中,如果线性表中的第一个元素就是被查找元素,则只需做一次比较就查找成功,查找效率最高;但如果被查找的元素是线性表中的最后一个元素,或者被查找的元素根本就不在线性表中,则为了查找这个元素需要与线性表中所有的元素进行比较,这是顺序查找的最坏情况。所以对长度为n的线性表进行顺序查找,在最坏情况下需要比较n次。

35、二分法查找只适用于顺序存储的有序表。在此所说的有序表是指线性表中的元素按值非递减排列(即从小到大,但允许相邻元素值相等)。

二分法检索要求线性表结点按关键值排序且以顺序方式存储。在查找时,首先与表的中间位置上结点的关键值比较,若相等则检索成功;否则根据比较结果确定下一步在表的前半部分或后半部分继续进行。二分法检索的效率比较高,设线性表有n个元素,则最多的检索次数为大于log2n(2为底数)的最小整数,最少的检索次数为1。

36、一般来说,一种数据的逻辑结构根据需要可以表示成多种存储结构,常用的存储结构有顺序、链接、索引等存储结构。而采用不同的存储结构,其数据处理的效率是不同的。

37、顺序存储结构就是用一组地址连续的存储单元依次存储该线性表中的各个元素,链式存储结构中各数据结点的存储序号是不连续的,并且各结点在存储空间中的位置关系与逻辑关系也不一致。两者都可以存储线性的、有序的逻辑结构,顺序结构使用的是连续物理空间,链式结构可以使用零散的物理空间存储,链式结构更灵活,不存在谁节约空间的说法

38、顺序存储结构中,数据元素存放在一组地址连续的存储单元中,每个数据元素地址可通过公式LOC(ai)=LOC(a1)+(i-1)L计算得到,从而实现了随机存取。对于链式存储结构,要对某结点进行存取,都得从链的头指针指向的结点开始,这是一种顺序存取的存储结构。

39、链式存储结构克服了顺序存储结构的缺点:它的结点空间可以动态申请和释放;它的数据元素的逻辑次序靠结点的指针来指示,不需要移动数据元素。故链式存储结构下的线性表便于插入和删除操作。

40、线性表的顺序存储结构的存储空间只用于存放结点数据,而链式存储结构的存储空间不仅要存放结点数据,还要存放数据的指针,所以线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构

41、在进行顺序查找过程中,如果线性表中的第1个元素就是被查找元素,则只需做一次比较就查找成功,查找效率最高;但如果被查找的元素是线性表中的最后一个元素,或者被查找的元素根本就不在线性表中,则为了查找这个元素需要与线性表中所有的元素进行较,这是顺序查找的最坏情况。所以对长度为n的线性表进行顺序查找,在最坏情况下需要比较n次

42、对于长度为n的有序线性表,在最坏情况下,二分查找只需要比较 次,而顺序查找需要比较n次。二分法查找只适用于顺序存储的有序表,如果采用链式存储结构,也只能用顺序查找,所以,对长度为n的有序链表进行查找,最坏情况下需要的比较次数为n

43、根据数据结构中各数据元素之间前后件关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。

44、如果一个非空的数据结构满足下列两个条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。则称该数据结构为线性结构,又称线性表。

45、有一个以上根结点的数据结构肯定是非线性结构,循环链表、双向链表是线性结构;线性表、栈与队列、线性链表都是线性结构,而二叉树是非线性结构。

46、在链表中,如果有两个结点的同一个指针域的值相等,则该链表一定是非线性结构

47、线性表的链式存储结构称为线性链表,为了适应线性表的链式存储结构,计算机存储空间被划分为一个一个小块,每一小块占若干字节,通常称这些小块为存储结点。每一个存储结点分为两部分:一部分用于存储数据元素的值,称为数据域;另一部分用于存放下一个数据元素的存储序号,即指向后件的结点,称为指针域。在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致。为了要在线性链表中插入一个新元素,首先要给该元素分配一个新结点,以便用于存储该元素的值,然后将存放新元素值的结点链接到线性表中指定的位置。在线性链表的插入过程中不发生数据无素移动的现象,只需改变有关结点的指针即可,从而提高了插入的效率。为了在线性链表中删除包含指定元素的结点,首先要在线性链表中找到这个结点,然后将要删除结点放回到可利用栈。在线性链表中删除一个元素后,不需要移动表的数据元素,只需改变被删元素所在结点的前一个结点的指针域即可。因此,进行插入与删除时,不需要移动表中的元素。

48、在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为3种:前序遍历、中序遍历和后序遍历。

前序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先访问根结点,然后遍历左子树,最后遍历右子树;并且遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。

后序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后遍历右子树,最后访问根结点;并且遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后访问根结点。

二叉树的中序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后访问根结点,最后遍历右子树;并且遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。

49、链表有线性链表,也有非线性链表。线性链表和二叉树链表的结点都有两个指针域,前者是线性结构,后者是非线性结构。线性单链表中的结点只有一个指针,叶子结点一般是对树结构而言,树结构是非线性结构,不是线性表。

50、算法的复杂度主要包括时间复杂度和空间复杂度:算法在运行过程中需辅助存储空间的大小称为算法的空间复杂度;算法的时间复杂度是指执行算法所需要的计算工作量,即算法执行过程中所需要的基本运算次数,为了能够比较客观地反映出一个算法的效率,在度量一个算法的工作量时,不仅应该与所使用的计算机、程序设计语言以及程序编制者无关,而且还应该与算法实现过程中的许多细节无关。为此,可以用算法在执行过程中所需基本运算的执行次数来度量算法的工作量。二者没有直接关系。

51、一个算法的空间复杂度,一般是指执行这个算法所需要的内存空间。一个算法所占用的存储空间包括程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间。其中额外空间包括算法程序执行过程中的工作单元以及某种数据结构所需要的附加存储空间。如果额外空间相对于问题规模来说是常数,则称该算法是原地(in place)工作的。

52、我们通常用时间复杂度和空间复杂度来衡量算法效率,算法的时间复杂度是指执行算法所需要的计算工作量;算法所执行的基本运算次数与问题的规模有关,而一个算法的空间复杂度,一般是指执行这个算法所需要的内存空间;一般来说,一种数据的逻辑结构根据需要可以表示成多种存储结构。

所谓算法的时间复杂度,是指执行算法所需要的计算工作量。为了能够比较客观地反映出一个算法的效率,在度量一个算法的工作量时,不仅应该与所使用的计算机、程序设计语言以及程序编制者无关,而且还应该与算法实现过程中的许多细节无关。为此,可以用算法在执行过程中所需基本运算的执行次数来度量算法的工作量。

53、子程序调用是一种层次关系,子程序调用功能模块,调用功能模块的个数也不确定,可以是一个,也可以是多个。二叉树是一种很有用的非线性结构,二叉树不同于树形结构。二叉树具有以下两个特点:①非空二叉树只有一个根结点;②每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。选项D规定每个结点只能有两个后件。在子程序调用中,调用的功能模块可以是多个,可以调用超过两个功能模块。

54、结构图的深度表示控制的层数结构图的深度表示控制的层数

55、数据结构是指反映数据元素之间关系的数据元素集合的表示。更通俗地说,数据结构是指带有结构的数据元素的集合。所谓结构实际上就是指数据元素之间的前后件关系。线性结构与非线性结构都可以是空的数据结构。一个空的数据结构究竟是属于线性结构还是属于非线性结构,还要根据具体情况来确定。如果对该数据结构的运算是按线性结构的规则来处理的,则属于线性结构;否则属于非线性结构。

㈤ 设计算法时只需要考虑结果的可靠性 对吗

程序=数据结构+算法。你找一本算法书看看,就知道什么是算法了。可以看看《算法导论》(有一定的难度)很不错的。比如分治算法,动态规划,搜索算法,回溯,贪心算法,这些都是经典的算法,学好之后你就发现你的编程能力上了一个高度的。算法的学习需要花费大量的精力,冰冻三尺非一日之寒。

㈥ 设计算法的原则

设计算法的原则:

1、正确性:算法的正确性是指算法至少应该具有输入、输出和加工处理无歧义性、能正确反映问题的需要、能够得到问题的正确答案。

2、可读性:设计算法的目的,一方面是为了让计算机执行,但还有一个重要的目的就是为了便于他人的阅读,让人理解和交流,自己将来也可阅读。如果可读性不好,时间长了自己都不知道写了什么,可读性是评判算法(也包括实现它的程序代码)好坏很重要的标志。

3、健壮性:当输入的数据非法时,算法应当恰当地做出反应或进行相应处理,而不是莫名其妙的输出结果。并且处理出错的方法不应是中断程序的执行,而应是返回一个表示错误或错误性质的值,以便于在更高的抽象层次上进行处理。

4、高效率与低存储量:通常,算法的效率指的是算法的执行时间;算法的存储量指的是算法执行过程中所需要的最大存储空间,两者的复杂度都与问题的规模有关。算法分析的任务是对设计的每一个具体的算法,利用数学工具,讨论其复杂度,探讨具体算法对问题的适应性。

(6)二级试题算法设计只考虑什么扩展阅读:

算法的“正确”通常在用法上有很大的差别,大体分为以下4个层次:

1、算法程序没有语法错误;

2、算法程序能够根据正确的输入的值得到满足要求的输出结果;

3、算法程序能够根据错误的输出的值满足规格说明的输出结果;

4、算法程序对于精心设计、极其刁难的测试数据都能满足要求的输出结果。

对于这4层含义,层次要求最低,因为仅仅没有语法错误实在谈不上是好的算法。而层次(4)是最困难的,人们几乎不可能逐一验证所有的输入都得到正确的结果。因此,算法的正确性在大部分情况下都不可能用程序来证明,而是用数学方法证明的。

㈦ 算法设计原则是什么

原则:首先说设计的算法必须是"正确的",其次应有很好的"可读性",还必须具有"健壮性",最后应考虑所设计的算法具有"高效率与低存储量"。

所谓算法是正确的,除了应该满足算法说明中写明的"功能"之外,应对各组典型的带有苛刻条件的输入数据得出正确的结果。

在算法是正确的前提下,算法的可读性是摆在第一位的,这在当今大型软件需要多人合作完成的环境下是换重要的,另一方面,晦涩难读的程序易于隐藏错误而难以调试。算法的效率指的是算法的执行时间,算法的存储量指的是算法执行过程中所需最大存储空间。

算法是程序设计的另一个不可缺的要素,因此在讨论数据结构的同时免不了要讨论相应的算法。这里有两重意思,即算法中的操作步骤为有限个,且每个步骤都能在有限时间内完成。

确定性表现在对算法中每一步的描述都没有二义性,只要输入相同,初始状态相同,则无论执行多少遍,所得结果都应该相同。

可行性指的是,序列中的每个操作都是可以简单完成的,其本身不存在算法问题,例如,"求x和y的公因子"就不够基本。

输入值即为算法的操作对象,但操作的对象也可以由算法自身生成,如"求100以内的素数",操作对象是自然数列,可以由变量逐个增1生成。

算法的健壮性指的是,算法应对非法输入的数据作出恰当反映或进行相应处理,一般情况下,应向调用它的函数返回一个表示错误或错误性质的值。

㈧ 19年3月二级C--数据结构与算法

1.假设线性表的长度为n,则最坏情况下:

冒泡排序: 需要经过n/2遍的从前往后扫描和n/2遍从后往前扫描,需要比较的次数为n(n-1)/2。总的时间复杂度为O(n的平方)。

快速排序: 比较次数也是n(n-1)/2。总的时间复杂度为O(n的平方)。

直接插入排序: 所需要比较的次数为n(n-1)/2。总的时间复杂度为O(n的平方)。

希尔排序所需要比较的次数为O(n的1.5次方)。(时间复杂度小于以上三种)

堆排序: 最坏情况下,其时间复杂度为O(nlogn)。(小于O(n的平方))。

2.根据数据结构中各元素之间前后关系的复杂程度,一般数据结构分为两大类: 线性结构和非线性结构。

如果一个非空的数据结构满足下列两个条件,①有且只有一个根结点 ②每个结点最多有一个前件,也最多有一个后件。则称该数据结构为线性结构,又称线性表。

3.算法时间复杂度与空间复杂度没有关系。

4.所谓算法的时间复杂度,是指执行算法所需要的计算工作量。

为了能够比较客观的反映出一个算法的效率,在度量一个算法的工作量时,不仅应该与所用的计算机程序设计语言,以及程序编制者无关,而且还应该与算法实现过程中的许多细节无关。

5.同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法乃至程序的效率。

算法分析的目的在于选择合适算法和改进算法。

6.堆排序在平均情况下的时间复杂度与最坏情况下的时间复杂度都是O(nlogn)。

7.二叉链表: 以二叉链表作为树的存储结构。链表中结点的两个链域分别指向该结点的第一个孩子结点和第一个孩子下的一个兄弟结点。

  循环链表是链式存储结构,循环队列是线性存储结构。( 【×】循环链表是循环队列的链式存储结构)

  双向链表也叫双链表,是链表的一种,它的每个数据结点都有两个指针,分别指向直接后继和直接前驱,所以从双链表中的任意一个结点开始都可以很方便地访问它的前驱结点和后继结点。

8.数据的逻辑结构由两个要素: 一是数据元素的集合,通常记为D。二是D上的关系,它反映了D中各元素之间的前后件关系,通常记为R。

即一个数据结构可以表示成B=(D,R),其中B表示数据结构,为了反映D中各元素之间的前后件关系,一般用二元组来表示。例如,假如a与b是D中的两个数据,则二元组表示a是b的前件,b是a的后件。

  线性结构用图形表示更加直观。例如: R={(5,1),(7,9),(1,7),(9,3)},结构为: 5→1→7→9→3

9.快速排序法是一种互换类的排序方法,但由于比冒泡排序的速度快,因此称为快速排序。

其基本思想是从线性表中选择一个元素设为t,将线性表后面小于t的元素移到前面,而前面大于t的元素移到后面,结果就将线性表分成了两部分,t插入到分界线的位置处,这个过程称为线性表的分割。

  简单插入排序法,是指将无序序列中的各元素依次插入到已经有序的线性表中。

  冒泡排序法是一种最简单的交换类排序方法,它是通过相邻数据元素的交换,逐步将线性表变为有序。

  后两种元素的移动过程中不会产生新的逆序。

10.程序可作为算法的一种描述。

11.为了降低算法的空间复杂度,要求算法尽量采用原地工作,所谓的原地工作是指执行算法时所使用的额外空间固定。

  一个算法的空间复杂度一般是指执行这个算法所需要的内存空间,一个算法所占用的存储空间包括程序所占的空间,输入的初始数据所占的空间以及算法执行过程中所需要的额外空间。

12.能从任意一个结点开始没有重复的扫描到所有结点的数据结构是循环链表。

13.循环队列是队列的一种存储结构

14.算法的设计要求包括效率与低存储量,即要考虑算法的时间复杂度与空间复杂度。

  算法的复杂度包括时间复杂度和空间复杂度。

  时间复杂度: 是指执行算法所需要的计算工作量。

  空间复杂度: 一般是指执行这个算法所需要的内存空间。

15.栈是一种特殊的线性表。链式结构把每一个存储结点分为数据域与指针域,带链的栈可以通过指针域的变化改变原有的栈的组织数据原则; 而顺序栈的栈底指针不变,栈顶指针改变。

16.堆排序在最坏的情况下需要比较nlogn次。

  快速排序,在最坏情况下需要比较n(n-1)/2次。

  顺序查找,在最坏情况下需要比较n次。

  最坏情况下,二分查找需要log2n(小于n-1)

  在长度为n的顺序表中寻找最大项/最小项时,比较次数最少为1,最多为n-1。

17.如果一个非空的数据结构满足下列两个条件,①有且只有一个根节点 ②每一个结点最多有一个前件,也最多有一个后件,则称该数据结构为线性结构。如果一个数据结构不是线性结构,则称为非线性结构。

18.带链栈空的条件是 top=bottom=NULL

19.满二叉树也是完全二叉树,完全二叉树不一定是满二叉树。对于满二叉树和完全二叉树来说,可以按照程序进行顺序存储,不仅节省了空间,又能方便地确定每一个结点的父结点等于左右子结点的位置,但顺序存储结构对于一般的二叉树不适用。

20.带链栈队头指针与队尾指针相同,且不为空时,队列元素个数为1; 若为空时,队列元素个数为0。

带链栈的栈底指针是随栈的操作而动态变化的。

21.二叉树的链式存储结构,也称为二叉链表。在二叉树中,由于每一个元素可以有两个后件,因此用于存储二叉树的存储结点的指针域有两个,所以二叉链表属于非线性结构。

22.线性表由一组元素数据元素构成,各元素的数据类型必须相同,矩阵是一个比较复杂的线性表,线性表除了插入和删除运算之外,还可以查找,排序,分解,合并等。数组是长度固定的线性表。

23.冒泡排序中,在互换两个相邻元素时,只能消除一个逆序; 快速排序及希尔排序中,一次交换可以消除多个逆序。

24.二分法检索的效率比较高,设线性表有n个元素,则最多的比较次数为log2n,最少检索次数为1。

25.循环链表的结构具有以下两个特点。一,在循环链表中,增加了一个表头结点,其数据域为任意或者根据需要来设置指针域指向线性表的第一个元素的结点。循环链表的头指针指向表头结点。二、循环链表中最后一个节点的指针域不是空,而是指向表头结点,即在循环链表中所有的结点指针构成一个环状链。

26.二叉树的存储结构是非线性结构,而完全二叉树是特殊形态的二叉树。采用顺序存储的完全二叉树属于非线性结构。

27.时间复杂度和计算机运行速度以及存储空间无关。

算法的空间复杂度和存储结构无关。

数据处理效率与数据的存储结构有关。

28.线性表,向量,栈,队列都属于线性结构的顺序存储。

29.循环队列是队列的存储结构。

  循环链表是另一种形式的念式存储结构。

  (✘循环链表是循环队列的链式存储结构。✘)

30.完全二叉树的总结点为奇数时,叶子结点是总结点加一再除以二。

31.在实际处理中,可以用一位数组来存储堆序列中的元素,也可以用完全二叉树来直观的表示堆的结构。在用完全二叉树表示堆时,树中所有非叶子结点值均不小于其左,右子树的根结点值,因为堆顶元素必须为序列的n个元素的最大项,因此其中序并不是有序序列。

  多重链表指表中每个结点由两个或两个以上的指针域的链表。如果一个非空的数据结构满足下列两个条件,①有且只有一个根结点,②每个结点最多有一个前件,也最多有一个后件,则称该数据结构为线性结构,所以多重链表不一定是非线性结构。

  在计算机中二叉树通常采用链式存储结构,对于满二叉树和完全二叉树来说,可以按层次进行顺序存储。

  排序二叉树的中序遍历序列是有序序列。

32.对于一个固定的规模,算法所执行的基本运算次数还可能与特定的输入有关。

33.在线性表中寻找最大项时,平均情况下和最坏情况下比较次数都是n-1。

34.在长度为n的顺序表中查找一 个元素, 假没需要查找的元素有一半的机会在表中,并且如果元素在表中,则出现在表中每个位置上的可能性是相

同的。则在平均情况下需要比较的次数大约为_

A.3n/4    B.n    C.n/2  D.n/4

本题的考查知识点是顺序表的存储结构。

因为需要查找的元素有一半机会在表中,所以二分之一的情况下平均比较次数为n/2,另二分之一的情况下平均比较次数为n。总的平均比较次数为(n/2+n) /2-3n/4。

故本题答案为A。

35.设数据结构B=(D, R),其中

D={a,b,c,d,e,f}

R={(a,b),(b,c),(c,d),(d,e),(e,f),(f,a)}该数据结构为

A.线性结构    B.循环队列

C.循环链表    D.非线性结构

本题的考查知识点是数据结构。

如果一个非控的数据结构满足下列两个条件: 1) 有且只有一个根节点; 2) 每一一个结点最多有一一个前件,也最多有一一个后件。则称该数据结构为线性结构。如果一个数据结构不是线性结构,则称之为非线性结构。

数据结构B=(D, R)中, 每一个结点均有一个前件,不符合“有且只有一个根节点”的条件,所以为非线性结构。故本题答案选D。

36.某带链的队列初始状态为front=rear=NULL。经过一系列正常的入队与退队操作后,front=rear=10。 该队列中的元素个数为_

A.1    B.0    C.1或0    D.不确定

本题的考查知识点是带链队列。

在初始状态为front=rear=NULL的带链队列入队时,如果插入的结点既是队首结点又是队尾结点,则rear和front同时指向这个结点;否则在循环队列的队尾加入一一个新元素,rear指向新增结点的数据域,rear+1, front不变。 退队时,在循环队列的排头位置退出一个元素并赋给指定的变量,front指向第二个结点的数据域,front+1, rear不变。当front=rear=10时, front和rear同时指向这个唯一 元素,所以该队列中的元素个数为1。

故本题答案为A。

37.若二叉树没有叶子结点,则为空二叉树。

38.某带链栈的初始状态为top=bottom=NULL, 经过一系列正 常的入栈与退栈操作后,top=10, bottom=20。 该栈中的元素个数为_____。

A.不确定    B. 10    C.1    D.0

本题考查的知识点是栈。

带链的栈是具有栈属性的链表,线性链表的存储单元是不连续的,为把存储空间中一-些离散的空闲存 储结点利用起来,把所有空闲的结点组织成一个带链的栈,称为可利用栈。

线性链表执行删除操作运算时, 被删除的结点可以”回收到可利用栈,对应于可利用栈的入栈运算;线性链表执行插入运算时,需要一个新的结点,可以在可利用栈中取栈顶结点,对应于可利用栈的退栈运算。

可利用栈的入栈运算和退栈运算只需要改动top指针即可。因为是不连续的存储空间,所以top指针将不会有规律地连续变化,因此无法据此判断栈中的元素个数。

所以本题答案为A。

㈨ 9月计算机二级MSOffice高级应用试题“经典”

2017年9月计算机二级MSOffice高级应用试题“经典”

随着移动互联网科技的发展,苹果公司重新定义了手机,手机开始逐渐具备电脑的功能,办公软件率先出现在了诺基亚的塞班系统和iPhone的手机系统。下面是我收集的关于计算机二级MSOffice高级应用试题,希望大家认真练习!

一、选择题(每小题1分。共20分)

1.下列叙述中正确的是()。

A.算法就是程序

B.设计算法时只需要考虑数据结构的设计

C.设计算法时只需要考虑结果的可靠性

D.以上三种说法都不对

2.下列叙述中正确的是()。

A.有一个以上根结点的数据结构不一定是非线性结构

B.只有一个根结点的数据结构不一定是线性结构

C.循环链表是非线性结构

D.双向链表是非线性结构

3.下列关于二叉树的叙述中,正确的是()。

A.叶子结点总是比度为2的结点少一个

B.叶子结点总是比度为2的结点多一个

C.叶子结点数是度为2的结点数的两倍

D.度为2的结点数是度为1的结点数的两倍

4.软件生命周期中的活动不包括()。

A.市场调研

B.需求分析

C.软件测试

D.软件维护

5.假设某台式计算机的内存储器容量为256MB,硬盘容量为40GB,硬盘的容量是内存容量的()。

A.200倍

B.160倍

C.120倍

D.100倍

6.程序调试的.任务是()。

A.设计测试用例

B.验证程序的正确性

C.发现程序中的错误

D.诊断和改正程序中的错误

7.下列关于数据库设计的叙述中,正确的是()。

A.在需求分析阶段建立数据字典

B.在概念设计阶段建立数据字典

C.在逻辑设计阶段建立数据字典

D.在物理设计阶段建立数据字典

8.数据库系统的三级模式不包括()。

A.概念模式

B.内模式

C.外模式

D.数据模式

9.一般而言,Internet环境中的防火墙建立在()。

A.每个子网的内部

B.内部子网之间

C.内部网络与外部网络的交叉点

D.以上3个都不对

10.下列选项中属于面向对象设计方法主要特征的是()。

A.继承

B.自顶向下

C.模块化

D.逐步求精

二、宇处理题(共30分)

请在【答题】菜单下选择【进入考生文件夹命令,并按照题目要求完成下面的操作。

注意:以下的文件必须都保存在考生文件夹[%USER%]下。

在考生文件夹下打开文档WORD.DOCX。

【背景素材】

为了更好地介绍公司的服务与市场战略,市场部助理小王需要协助制作完成公司战略规划文档,并调整文档的外观与格式。

现在,请你按照如下需求,在Word.docx文档中完成制作工作:

(1)调整文档纸张大小为A4幅面,纸张方向为纵向;并调整上、下页边距为2.5厘米,左、右页边距为3.2厘米。

(2)打开考生文件夹下的“word一样式标准.docx”文件,将其文档样式库中的“标题1,标题样式一”和“标题2,标题样式二”复制到Word.docx文档样式库中。

(3)将Word.docx文档中的所有红颜色文字段落应用为“标题1,标题样式一”段落样式。

(4)将Word.docx文档中的所有绿颜色文字段落应用为“标题2,标题样式二”段落样式。

(5)将文档中出现的全部“软回车”符号(手动换行符)更改为“硬回车”符号(段落标记)。

(6)修改文档样式库中的“正文”样式,使得文档中所有正文段落首行缩进2个字符。

(7)为文档添加页眉,并将当前页中样式为“标题l,标题样式一”的文字自动显示在页眉区域中。

(8)在文档的第4个段落后(标题为“目标”的段落之前)插入一个空段落,并按照下面的数据方式在此空段落中插入一个折线图图表,将图表的标题命名为“公司业务指标”。

销售额成本利润

2010年4.32.41.9

2011年6.35.11.2

2012年5.93.62.3

2013年7.83.2 4.6

三、电子表格题(共30分)

请在【答题】菜单下选择【进入考生文件夹】命令,并按照题目要求完成下面的操作。

注意:以下的文件必须都保存在考生文件夹[%USER%]下。

在考生文件夹下打开文档EXCEL.XLSX。

【背景素材】

财务部助理小王需要向主管汇报2013年度公司差旅报销情况,现在请按照如下需求,在EXCEL.XLSX文档中完成工作:

(1)在“费用报销管理”工作表“日期”列的所有单元格中,标注每个报销日期属于星期几,例如日期为“2013年1月20日”的单元格应显示为“2013年1月20日星期日”,日期为“2013年1月21日”的单元格应显示为“2013年1月21日星期一”。

(2)如果“日期”列中的日期为星期六或星期日,则在“是否加班”列的单元格中显示“是”,否则显示“否”(必须使用公式)。

(3)使用公式统计每个活动地点所在的省份或直辖市,并将其填写在“地区”列所对应的单元格中,例如“北京市”、“浙江省”。

(4)依据“费用类别编号”列内容,使用VLOOKUP函数,生成“费用类别”列内容。对照关系参考“费用类别”工作表。

(5)在“差旅成本分析报告”工作表B3单元格中,统计2013年第二季度发生在北京市的差旅费用总金额。

(6)在“差旅成本分析报告”工作表B4单元格中,统计2013年员工钱顺卓报销的火车票费用总额。

(7)在“差旅成本分析报告”工作表B5单元格中,统计2013年差旅费用中,飞机票费用占所有报销费用的比例,并保留2位小数。

(8)在“差旅成本分析报告”工作表B6单元格中,统计2013年发生在周末(星期六和星期日)的通讯补助总金额。

四、演示文稿题(共20分)

请在【答题】菜单下选择【进入考生文件夹】命令,并按照题目要求完成下面的操作。

注意:以下的文件必须都保存在考生文件夹[%USER%]下。

【背景素材】

校摄影社团在今年的摄影比赛结束后,希望可以借助PowerPoint将优秀作品在社团活动中进行展示。

这些优秀的摄影作品保存在考试文件夹中,并以Photo(1).jpg~Photo(12).jpg命名。

现在,请你按照如下需求,在PowerPoint中完成制作工作:

(1)利用PowerPoint应用程序创建一个相册,并包含Photo(1).jpg~Photo(12).jpg共12幅摄影作品。 在每张幻灯片中包含4张图片,并将每幅图片设置为“居中矩形阴影”相框形状。

(2)设置相册主题为考试文件夹中的“相册主题.pptx”样式。

(3)为相册中每张幻灯片设置不同的切换效果。

(4)在标题幻灯片后插入一张新的幻灯片,将该幻灯片设置为“标题和内容”版式。在该幻灯片的标题位置输入“摄影社团优秀作品赏析”;并在该幻灯片的内容文本框中输入3行文字,分别为“湖光春色”、“冰消雪融”和“田园风光”。

(5)将“湖光春色”、“冰消雪融”和“田园风光”3行文字转换为样式为“蛇形图片题注列表”的SmartArt对象,并将Photo(1).jpg、Photo(6).jpg和Photo(9).jP9定义为该SmartArt对象的显示图片。

(6)为SmartArt对象添加自左至右的“擦除”进入动画效果,并要求在幻灯片放映时该SmartArt对象元素可以逐个显示。

(7)在SmartArt对象元素中添加幻灯片跳转链接,使得单击“湖光春色”标注形状可跳转至第3张幻灯片,单击“冰消雪融”标注形状可跳转至第4张幻灯片,单击“田园风光”标注形状可跳转至第5张幻灯片。

(8)将考试文件夹中的“ELPHRG01.wav”声音文件作为该相册的背景音乐,并在幻灯片放映时即开始播放。

(9)将该相册保存为“PowerPoint.pptx”文件。

;

㈩ 计算机二级考试考什么内容啊

因为你没有具体指出你要考哪门课程,C、C++、JAVA、Visual Basic,Access 还是Visual FoxPro ??

全国计算机等级考试二级公共基础知识
基本要求
1. 掌握算法的基本概念。
2. 掌握基本数据结构及其操作。
3. 掌握基本排序和查找算法。
4. 掌握逐步求精的结构化程序设计方法。
5. 掌握软件工程的基本方法,具有初步应用相关技术进行软件开发的能力。
6. 掌握数据的基本知识,了解关系数据库的设计。

考试内容
一、 基本数据结构与算法
1. 算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复杂度)。
2. 数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表示;线性结构与非线性结构的概念。
3. 线性表的定义;线性表的顺序存储结构及其插入与删除运算。
4. 栈和队列的定义;栈和队列的顺序存储结构及其基本运算。
5. 线性单链表、双向链表与循环链表的结构及其基本运算。
6. 树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。
7. 顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。
二、 程序设计基础
1. 程序设计方法与风格。
2. 结构化程序设计。
3. 面向对象的程序设计方法,对象,方法,属性及继承与多态性。
三、 软件工程基础
1. 软件工程基本概念,软件生命周戎概念,软件工具与软件开发环境。
2. 结构化分析方法,数据流图,数据字典,软件需求规格说明书。
3. 结构化设计方法,总体设计与详细设计。
4. 软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试。
5. 程序的调试,静态调试与动态调试。
四、 数据库设计基础
1. 数据库的基本概念:数据库,数据库管理系统,数据库系统。
2. 数据模型,实体联系模型及E-R图,从E-R图导出关系数据模型。
3. 关系代数运算,包括集合运算及选择、投影、连接运算,数据库规范化理论。
4. 数据库设计方法和步骤:需求分析、概念设计、逻辑设计和物理设计的相关策略。

考试方式
1、 公共基础的考试方式为笔试,与C语言(VisualBASIC、Visual FoxPro、Java、Access、Visual C++)的笔试部分合为一张试卷。公共基础部分占全卷的30分。
2、 公共基础知识有10道选择题和5道填空题。

参考网站:
全国计算机等级考试二级C考试大纲
http://ncre.csai.cn/ncredg/200605160849041980.htm

全国计算机等级考试二级Access语言考试大纲
http://ncre.csai.cn/ncredg/200605170846131747.htm

全国计算机等级考试二级Java考试大纲
http://ncre.csai.cn/ncredg/200605160911201577.htm

全国计算机等级考试二级C++考试大纲
http://ncre.csai.cn/ncredg/200605160915441498.htm

全国计算机等级考试二级VB考试大纲
http://ncre.csai.cn/ncredg/200605160904311624.htm

全国计算机等级考试二级VFP考试大纲
http://ncre.csai.cn/ncredg/200605170854421935.htm

另外,还有可以上http://ncre.csai.cn 上去看看,这上面有很多计算机二级的相关资源,可以参考。

参考:网络

阅读全文

与二级试题算法设计只考虑什么相关的资料

热点内容
c语言常用算法pdf 浏览:960
编程如何让画面动起来 浏览:865
大龄女程序员未来发展 浏览:976
数学书籍pdf 浏览:506
加密门禁卡写入成功无法开门 浏览:464
齿轮传动pdf 浏览:52
alpinelinux 浏览:150
手机端app的扫码功能在哪里 浏览:227
少儿编程中小班英语教案 浏览:452
锁屏密码加密手机怎么解除 浏览:205
linuxlostfound 浏览:135
征途服务器ip地址 浏览:330
git提交代码命令行 浏览:165
什么叫浏览器服务器结构 浏览:157
于谦聊天哪个app 浏览:449
小鹏汽车nlp算法工程师薪资 浏览:881
代码加密与隐藏 浏览:649
fordfulkerson算法 浏览:352
京东热app在哪里可以下载 浏览:877
彩报图书app哪个好 浏览:303