通过对全国教师招聘考试的考情分析,总结出全国教师招聘考试《信息技术学科知识与教学能力》算法与程序设计模块的知识点,希望能帮助考生抓住考点、有针对性地复习。
考点·算法
1.概念
算法(Algorithm)就是解决某个特定问题的方法和步骤的精确描述。所谓“精确描述”,是指对一个问题求解算法的描述,应该使算法的“执行者”能够根据算法所描述的方法和步骤逐步地完成对该问题的求解工作。例如,“手机支付需要进行扫描二维码、输入金额、输入支付密码这些步骤”描述了手机支付的步骤,就是一个算法描述。
2.特征
一个算法应该具有以下五个重要的特征。
(1)可行性(Effectiveness)
指算法中的每一步都应当能有效地运行,也就是说算法是可行的,并要求最终得到正确的结果。
(2)确定性(Definiteness)
指算法的每一步操作,必须有确切的含义,不能有二义性和多义性。
(3)有穷性(Finiteness)
(4)输入(Input)
一个算法有零个或多个输入,以描述运算对象的初始情况。零个输入是指算法本身定出了初始条件。
(5)输出(Output)
一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的。
考点·算法评价方法
T(n)=Ο(f(n))
(2)O(log2n):对数阶,如二分搜索算法;
(3)O(n):线性阶,如n个数内找最大值;
(4)O(nlog2n):对数阶,如快速排序算法;
(5)O(n2):平方阶,如选择排序,冒泡排序;
(6)O(n3):立方阶,如两个n阶矩阵的乘法运算;
(7)O(2n):指数阶,如n个元素集合的所有子集的算法;
(8)O(n!):阶乘阶,如n个元素全部排列的算法。
2.空间复杂度
算法的空间复杂度指的是对一个算法在运行过程中临时占用存储空间大小的量度,记做S(n)=O(f(n))。比如直接插入排序的空间复杂度是O(1),而一般的递归算法的空间复杂度是O(n),因为每次递归都要存储返回信息。
算法执行期间所需要的存储空间包括三个部分:
(1)算法程序所占的空间;
(2)输入的初始数据所占的存储空间;
(3)算法执行过程中所需要的额外空间。
考点·算法设计常用方法
1.解析法
解析法是指用解析的方法找出表示问题的前提条件与结果之间关系的数学表达式,并通过表达式的计算来实现问题求解。用解析法解决问题的关键就是找到未知与已知之间的数学关系式,即找出求解问题的解析表达式。
2.穷举法
穷举法也叫列举法或枚举法。在已知答案范围的情况下,依次地列举该范围内所有的取值,并对每个取值进行考查,确定是否满足条件。经过循环遍历之后,筛选出符合要求的结果。列举法通常用于解决“是否存在”或“有哪些可能”等问题。
3.递归法
递归法的基本思想是把一个复杂的计算过程转化为简单过程的多次重复,每次重复都从旧值的基础上递推出新值,并由新值代替旧值。它是一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解。
一般来说,递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。构成递归必须具备的以下两个条件:
(1)子问题须与原始问题为同样的事,且更为简单;
(2)不能无限制地调用本身,须有个出口,化简为非递归状况处理。
4.递推法
递推算法是指通过已知条件,利用特定关系得出中间推论,直至得到结果的算法。递推是迭代算法中一种,用若干步可重复的简单运算来描述复杂数学问题的方法。采用递推的方法来求解的话,第n项之前的每一项都必须计算出来,最后才能得到所需要的第n项的值。
递推算法分为顺推和逆推两种。顺推法是从已知条件出发,逐步推算出要解决问题的方法叫顺推;所谓逆推法从已知问题的结果出发,用迭代表达式逐步推算出问题的开始的条件,即顺推法的逆过程,称为逆推。
考点·数据逻辑结构
数据的逻辑结构是指反映数据元素之间逻辑关系的数据结构,即从逻辑关系上描述数据,它与数据的存储无关,是独立于计算机的。数据的逻辑结构包括集合、线性结构、树形结构和图结构四种基本类型,集合、树和图属于非线性结构。非线性结构中可能有多个终端结点和多个开始结点,每个结点可能有多个前驱和多个后继。