资源简介 2.1 算法的概念及描述一、选择题1.算法的特征包括下列哪几项。( )A.有穷性 B.复杂性 C.可行性 D.确定性2.在深度优先搜索中,我们首先访问一个节点,然后尽可能深地搜索其子节点,直到无法继续为止。然后回溯到上一个节点,继续搜索其它子节点。这种搜索策略的一个主要特点是它会深入探索任何一个分支。请问,这种搜索策略通常用于解决哪类问题( )A.寻找最短路径问题 B.解决迷宫问题C.拓扑排序问题 D.寻找最大公约数问题3.下列关于算法描述,正确的是( )A.一个算法的执行步骤可以是无限的 B.一个完整算法必须要有输入C.一个完整算法必须要有输出 D.算法只能用流程图表示4.符号运算中的“蕴含”关系通常用哪个符号表示( )A.∧ B.∨ C.→ D. 5.计算圆面积的算法可描述为 ①输入圆半径r ,②计算圆面积s= ,③输出结果s ,④结束,这个算法属于( )A.枚举算法 B.排序算法 C.递归算法 D.解析算法6.计算机解决问题的步骤和方法是( )A.编程 B.分析 C.算法 D.抽象建模7.有关算法理解错误的是( )A.算法必须要有数据的输出B.算法是计算机解决某一问题的方法,且需要使用某种方法进行精确地描述C.解决某一个实际问题的算法可以有无限个步骤D.算法的步骤不能出现歧义8.“洗衣机的洗衣流程”情境问题,洗衣机模拟人洗衣的过程,自动执行洗衣程序,节省了大量的人力,这主要归功于由算法控制的机器设备。算法指在有限步骤内解决问题所使用的方法,从下图2的“洗涤算法”中,可以看出算法具有的特征是( ) 图1 图2A.无穷性 B.单一性 C.确定性 D.繁琐性9.第一年有一头小母牛,每头小母牛从出生第四年起,每年生一头小母牛,按此规律,第10年时有( )头母牛。A.13 B.15 C.19 D.2810.i=3:s=1/(i-3) 无法执行,原因是它违反了算法特征中的( )A.有穷性 B.唯一性 C.可行性 D.确定性11.某算法部分流程图如图所示,在流程图空白处填入一组代码,使输出结果sum与表达式“2-4+6-8+…-100”值相同的是( )①i=i+1 ②k=-k*2 B.①k=-k ②i=i+2C.①i=i+2 ②k=-k D.①k=-k*2 ②i=i+212.下列问题无法用算法具体描述的是( )A.求所有自然数中5的倍数之和 B.计算一元二次方程的根C.百鸡百钱问题D.随机产生10个50以内的自然数并按降序排列13.下列关于流程图描述算法说法正确的是( )A.流程图直观易懂,但容易产生二义性 B.流程图描述算法不直观、不清晰C.流程图必须包含一个判断框 D.流程图中无须填写程序代码14.某算法流程图如下图所示,若输入k的值为5,以下说法正确的是( )A.程序运行结束后,s的值是2 B.循环体共执行了5次C.程序结束后,t的值为-1 D.表达式i<k执行了5次15.下列关于“洗涤算法”的描述,错误的是( )A.洗涤算法中的每一步洗衣机都能理解并正确执行,体现了算法的确定性B.洗衣任务完成,蜂鸣器发出鸣叫声,蜂鸣器鸣叫是一种输出C.洗衣机能在有限的时间里完成洗衣任务,体现了算法的有穷性D.在“快洗”模式中,进水时间、洗涤次数等都属于输入二、填空题16.为了确保算法的正确性,我们通常需要对算法进行 ,以验证其是否满足预期的功能要求。17.在算法描述中,使用流程图可以直观地展示算法的 。18.空间复杂度表示算法执行过程中所需存储空间的多少,通常与 相关。19.在解析算法时,我们通常需要关注算法的 、正确性和效率。20.深度优先搜索(DFS)是一种用于遍历或搜索树或图的算法。它使用 数据结构来存储待访问的节点。21.算法是解决问题的方法,它具备有穷性、确定性、有零个或多个输入、有一个或多个输出、 等特征。三、判断题22.使用伪代码表示算法时,可以省略一些不必要的细节。( )23.在伪代码中,通常不需要指定变量的类型。( )24.计算机算法必须具有有穷性、确定性、有输入有输出和可行性。( )25.算法有零个或多个输入、有一个或多个输出。( )26.算法是解决问题的方法,是程序设计的核心和灵魂,算法中的每一步不一定都可以被分解为基本的可执行操作。( )27.算法具有确定性,每个问题的解决,只有一种确定的算法。( )四、操作题28.算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则。某一个算法的描述如下:①输入两个数A,B;②如果A大于B,则A除以B的余数值赋给C;③否则,则将B除以A的余数值赋给C;④输出C;⑤结束(1)以上算法的描述属于哪一种: ;(2)以上算法第②步用Python语言实现,下划线文字的代码可以写为: ;(3)以上算法第③步用Python语言实现,下划线文字的代码可以写为: ;(4)如果A的值是5,B的值是3,则执行完算法后,A的值是 ,C的值是 。参考答案:1.ACD【详解】本题主要考查算法的特征。一个算法应该具有以下五个重要的特征:1、有穷性: 一个算法必须保证执行有限步之后结束;2、确切性:算法的每一步骤必须有确切的定义;3、输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定义了初始条件;4、输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的;5、可行性:算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。故本题选ACD选项。2.B【详解】本题考查算法。寻找最短路径问题:虽然DFS可以用于找到路径,但它通常不是寻找最短路径的首选算法,因为DFS会深入探索任何一个分支,而不考虑路径的长度。拓扑排序问题:拓扑排序通常用于有向无环图(DAG),以确保所有任务都按照正确的顺序执行。虽然DFS可以用于拓扑排序(通过记录节点的完成时间),但这不是DFS的主要应用场景。拓扑排序更常用的是基于Kahn算法或基于DFS的另一种变体(记录节点的开始时间)。寻找最大公约数问题:这个问题与DFS无关。寻找最大公约数通常使用欧几里得算法(也称为辗转相除法)。深度优先搜索通常用于解决迷宫问题等需要深入探索分支的问题。故正确答案为:选项B。3.C【详解】本题主要考查算法的描述。一个算法的执行步骤必须是有限的; 一个完整算法可以有零个或多个输入; 一个完整算法必须要有输出; 算法能用流程图、自然语言、伪代码等表示,故本题选C选项。4.C【详解】本题考查符号运算。“→”也可以表示蕴含关系,即如果前面的命题为真,那么后面的命题也为真(尽管这种用法不如条件关系常见)。但在某些逻辑系统中,“蕴含”确实是这样表示的。请注意,此题可能存在歧义,因为“蕴含”更常见的表示方法是使用条件语句,如“如果P,则Q”。然而,在给定的选项中,“→”是最接近“蕴含”关系的符号。因此,选择C作为答案。但在实际应用中,请务必注意符号的准确含义和上下文。故选C。5.D【详解】本题主要考查算法的描述。计算圆面积s可以用带入公式计算得到,属于解析算法,故本题选D选项。6.C【详解】本题考查计算机解决问题。计算机解决问题的步骤和方法涉及多个方面,包括分析问题、设计算法、编写程序等。在这些步骤中,算法起着关键作用。算法是一系列清晰而有序的指令,描述了如何执行特定任务或解决特定问题。通过设计和实现算法,计算机能够有效地解决各种问题。故答案为:C。7.C【详解】本题主要考查算法的描述。一个算法应该具有以下五个重要的特征:1、有穷性: 一个算法必须保证执行有限步之后结束;2、确切性:算法的每一步骤必须有确切的定义;3、输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定义了初始条件;4、输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的;5、可行性:算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。故本题选C选项。8.C【详解】本题考查的是算法特征。一个算法应该具有以下五个重要的特征:1、有穷性:一个算法必须保证执行有限步之后结束;2、确切性:算法的每一步骤必须有确切的定义;3、输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定除了初始条件;4、输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果,没有输出的算法是毫无意义的;5、可行性:算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。从图中可知,算法具有确定性。故本题应选C。9.C【详解】本题主要考查算法描述。根据题干规律,可列出如下表格,由表可知,第10年时有19头母牛,故本题选C选项。 10.C【详解】本题考查的是算法特征。i=3:s=1/(i-3) ,除数为0,它违反了算法特征中的可行性,故应选项C。11.B【详解】本题考查的是流程图识读。输出结果sum与表达式“2-4+6-8+…-100”值相同的,判断条件为i<=100,故i=i+2要在sum=sum+i*k的后;要实现正负的切换,通过k=-k实现。故选B。12.A【详解】本题考查算法相关内容。一个算法应该具有的特征:(1)有穷性,一个算法必须保证执行有限步之后结束; (2)确切性,算法的每一步骤必须有确切的定义;(3)输入,一个算法有零个或多个输入,以刻画运算对象的初始情况;(4)输出,一个算法有一个或多个输出,以反映对输入数据加工后的结果.没有输出的算法是毫无意义的;(5)可行性,算法原则上能够精确地运行。BCD符合算法特性,可以描述,A选项,不符合算法的有穷性,错误。故本题答案是A选项。13.D【详解】本题考查流程图相关内容。流程图描述算法,优点:形象直观,各种操作一目了然,不会产生“歧义性”,便于理解,算法出错时容易发现,并可以直接转化为程序。缺点:所占篇幅较大,由于允许使用流程线,过于灵活,不受约束,使用者可使流程任意转向,从而造成程序阅读和修改上的困难,不利于结构化程序的设计。流程图表示顺序结构时,不含判断框。ABC说法错误 。流程图是以特定的图形符号加上说明,表示算法的图,不需要填写程序代码。D选项正确。故本题答案是D选项。14.D【详解】本题考查的是流程图识读。观察流程图可知,该算法功能是计算s=1-2+3-……t-1的值。若输入k的值为5,s=1-2+3-4=-2,选项A说法错误;i从1到4,故循环体共执行了4次,选项B说法错误;程序结束后,t的值为1,选项C说法错误;i要从1判断到5,故表达式i<k执行了5次,选项D说法正确。故本题应选D。15.D【详解】本题主要考查算法的描述。在“快洗”模式中,进水时间、往洗衣机放衣物等都属于输入,洗涤次数不属于输入,故本题选D选项。16.测试【详解】本题考查算法相关内容。测试是验证算法正确性的常用手段,通过输入特定的测试用例来检查算法的输出是否符合预期。故本题答案是:测试。17.逻辑结构【详解】本题考查算法流程图相关内容。在算法描述中, 使用流程图是一种非常直观的方法来展示算法的逻辑结构。 流程图通过使用特定的图形符号和带箭头的线, 可以清晰地表示出算法中的顺序、 选择和循环等基本结构。 这种图形化的表示方法不仅使得算法的执行过程一目了然, 而且有助于理解和分析算法的逻辑流程。 故本题答案是:逻辑结构。18.输入规模【详解】本题考查算法相关内容。空间复杂度是衡量算法执行过程中所需存储空间大小的一种量度, 它与输入规模有关, 是评估算法效率的一个重要方面。 故本题答案是:输入规模。19.可读性【详解】本题考查算法。解析算法时,除了正确性和效率,还需要关注算法的可读性,即代码是否易于理解。故答案为:可读性。20.栈【详解】本题考查算法。深度优先搜索使用栈这种数据结构来存储待访问的节点,以便实现后进先出的遍历顺序。故正确答案为:栈。21.可行性【详解】本题考查算法的描述。算法是解决问题的方法,它具备有穷性、确定性、有零个或多个输入、有一个或多个输出、可行性等特征。22.正确【详解】本题考查伪代码。伪代码的目的是清晰地呈现算法的核心逻辑和主要步骤,而非追求完全详细和精确到编程语言的级别。因此,在不影响理解算法本质和流程的前提下,可以省略一些在特定编程语言中才需要关注的非关键细节。这样能更突出算法的重点和关键部分,使读者更容易把握算法的整体思路。故说法正确。23.正确【详解】本题考查伪代码。伪代码的主要目的是清晰地表达算法的逻辑和步骤,重点在于算法的思路和结构,而不是严格遵循编程语言中对变量类型的明确指定。它更侧重于以一种简洁和易懂的方式描述算法,让读者能够快速理解算法的核心内容。故说法正确。24.正确【详解】本题考查算法特征。有穷性,算法必须在有限的时间内完成,即算法的执行步骤是有限的,不能陷入无限循环中。确定性,算法的每一步骤都必须有明确的定义,不会出现模棱两可的情况。算法在相同的条件下,只有一条执行路径,相同的输入只会产生相同的输出。输入,算法有零个或多个输入,这些输入是算法开始执行前所必需的或外部提供的。输出,算法至少有一个输出,它是算法执行后产生的结果。算法的目的是为了求解某个问题或处理某个数据,并将处理结果以某种形式输出。可行性,算法的每一步都必须是可行的,也就是说,每一步都能通过执行有限次数的基本运算实现,故根据题意说法正确。25.正确【详解】本题考查算法特征相关内容。算法基本特点:有穷性、可行性、确定性、输入(零或多个输入)、输出(有一个或多个输出)。故本题答案是:正确。26.错误【详解】本题主要考查算法的描述。算法是解决问题的方法,是程序设计的核心和灵魂,算法中的每一步一定都可以被分解为基本的可执行操作,故表述错误。27.错误【详解】本题主要考查算法的描述。算法具有确定性,每个问题的解决,可以有多种确定的算法,故表述错误。28. 自然语言 C = A % B C = B % A 5 2【详解】本题考查算法的表示方法。(1)题目中是以自然语言的形式对算法进行描述的。故答案为:自然语言。(2)在 Python 中,A 除以B的余数用A % B表示,所以这里填 C = A % B。(3)同理,B 除以A的余数用B % A表示,所以填 C = B % A。(4)当A=5,B=3时,A大于B,执行第②步,C=5%3=2,A的值不变仍为5,所以A的值是5,C的值是2。故答案为:5、2。 展开更多...... 收起↑ 资源预览