今天把去年准备充分的算法课拿出来学习,发现确实有些不充分。
我采用的是矩阵队列的方式进行讲解,每一个环节都是面积的计算,流程图也都是顺序结构,虽然心形的面积计算公式相对复杂,但还是换汤不换药。整节课没有看到算法的美,更多的是为了讲数学而构造的几何模型,为了讲流程图而创建的整个主题。算法是美在流程,但整节课全部都充斥着各种各样的流程图,也会让人感到头皮发麻。
关键问题是我当时并没觉得有什么不妥,还自我感觉良好。隔了一年,再回头来看当时准备的课例,真心觉得漏洞百出,牵强附会。首先,算法的特征没有讲明白,为什么会有这些特征,是因为我们在解决问题的时候不可能毫无限度的操作,这就是确定性。也不可能永远都不能结束,这就是有穷性。同时,解决问题要能够实行,就是可行性。再加上输入输出就构成了算法的五个重要特征。
为什么算法最终要转化成数学模型呢?是因为最后一定是跟数据打交道的,只要用到数据就有计算,就需要用到数学知识。之所以采用几何模型,是因为这种方式更加直观好理解,利用数学的数轴也可以建立模型。我一味的陷在几何模型中,就容易思维定势走不出来。
算法的描述方式有自然语言和流程图,自然语言描述想对口语化,而流程图更加清晰和精炼,每一个流程更容易向代码转化。这就是为什么在写程序的时候,要反复强调绘制流程图或者在头脑中构建流程图,流程图清晰了,代码也呼之欲出了。
最后,要考虑本节课是体验算法之美,是让学生感受到利用最优算法能帮我们解决生活中的难题,或者进行重复烦琐的工作,如果只是满屏的代码或者流程符号,那么学生只会觉得难以接。受。
网友评论