APP下载

“数据结构应用”单元教学建议

2020-12-08熊雪亭

中国信息技术教育 2020年22期
关键词:数据结构算法模块

熊雪亭

高中信息技术选择性必修模块1“数据与数据结构”包括“数据及其价值”“数据结构”“数据结构应用”三部分内容。“数据结构应用”是模块最后一部分内容,是前面所学内容的综合应用,是整个模块非常重要的一部分。设计与实施好本单元教学,对整个模块教学目标的达成起着至关重要的作用。

● 思深方益远

1.寻找单元内容之间的逻辑线索

教师不仅要理解单元中的每个知识点,具备一定的知识存量,更要清楚单元之间、单元内各内容之间的逻辑线索,将各部分内容建立关联,形成整体的知识体系。

本模块共分为“数据及其价值”“数据结构”“数据结构应用”三部分内容。第一部分主要围绕数据概念展开学习,第二部分主要围绕结构展开学习,第三部分为本单元内容额重点所在,主要从数据结构应用过程中与算法密不可分的关系、数据结构应用时的常用算法、数据结构应用时常用操作三方面展开,具体细化为理解算法与数据结构的关系、体验迭代和递归方法、实现数据的排序和查找三部分。

在利用编程解决问题时,数据结构与算法有着密不可分的关系。算法是编程思想,数据结构是这些思想的逻辑基础。在解决问题时,两者是在问题求解中相辅相成、不可分割的两个方面。迭代与递归是应用数据结构解决问题的常用算法。递归是自己调用自己,每次旨在缩小问题规模;递归算法的执行过程划分为递推和回归两个阶段。迭代是自己执行很多次,用新的结果替代自己,每次旨在更接近目标;迭代算法的执行过程是不断用变量的旧值递推新值的过程。排序与查找是应用数据结构解决问题时最常见的操作。一般会先通过查找算法找到某个对象再对其进行相应操作,而排好序的数据更方便处理。通过本单元的学习,学生将会在查找和排序的基本操作中,学习并尝试使用迭代和递归算法,应用数据结构解决实际问题。

2.分析单元内容特点

本单元侧重数据结构的应用。在利用计算机应用数据结构解决问题时,离不开算法。本单元学生将学习两种经典的算法——迭代和递归,在实现排序和查找的过程中,尝试根据具体问题合理选择数据结构并设计相应的算法,解决实际问题。其中,涉及的迭代和递归算法思想、排序和查找的实现思路、算法与数据结构关系等内容呈现出理论性较强、较抽象的特点。在数据结构的应用中,排序和查找是常用的基本操作,编程实现排序和查找,需要考虑数据结构、算法思想、编程实现、调试程序、优化程序等多方面的内容,这就需要学生具备创新解决能力、实践动手能力、综合应用能力等。因此,灵活应用知识解决问题是本单元的内容特点之一。整体来说,本单元内容理论与实践并重。

3.做好单元整体内容的切分与统整

学生不应盲目地学习具体的知识与操作,而应对整个模块、整个单元的知识体系有清晰而完整的认知。教学中教师更关注每节课内容的具体落实,往往忽略了节与节之间的关联,这样就造成课与课之间的相对孤立,不利于学生整体认知和综合能力的提升。因此,建议教师做好单元整体内容的切分与统整,引导学生对单元及整个模块进行整体建构。

● 谋定而后动

1.关注过程,关注发展

本单元的学习,应重点围绕学科核心素养的培养,以内容为载体,经历真实情境中的问题解决过程;关注点放在解决问题的过程,着重对解题的规律和思想方法的理解,注重学生理解能力、迁移能力的培养和提升。

2.以数据结构的视角,突出应用

(1)以数据结构的视角

本单元的重点是理解算法与数据结构的关系,应用数据结构相关内容来解决问题。教学时需要突出本模块的重点,着重从数据结构的角度去分析解决问题。安排内容和设计活动时着重体现选择合理数据结构,然后在此基础上设计算法来解决问题。可适当选择有代表性的项目或任务,突出对同一问题,由于数据结构不同,设计的算法也就不同,从而对比体现数据结构在问题解决中的重要性。这样,与前面的内容相呼应,综合应用前面所学的关于数据结构的内容,解决问题,使整个模块教学形成一个整体。

(2)以应用的视角

本单元的关键词是应用。教学时应围绕应用展开,可以通过创设真实情境,选择合适的项目,让学生综合应用前面两部分所学内容来解决真实问题,如解决停车场管理问题、自驾游路线规划问题、背单词问题等。学生在真实情境中尝试利用数据结构来解决问题,体会数据结构在解决问题时的重要性。

3.有效教学,方法得当

(1)利用教具(学具)与可视化平台破解内容抽象难理解的难题

本单元有很多理论内容,抽象,难理解。教师充分利用教具或学具,进行演示或让学生现场亲身体验,是个不错的方法。例如,在利用汉诺塔这个经典案例学习递归思想时,可以利用汉诺塔的教具或学具(实物),通过教师演示或学生亲身体验的方式来引导学生一步步地理解递归思想和执行过程。

(2)利用PBL学习方式提升学生综合解决问题的能力

PBL学习方式既是指Project-Based Learning——基于项目的学习,也是指Problem-Based Learning——基于问题的学习。无论是基于项目的学习还是基于问题的学习,都强调学生在团队合作的过程中,通过对真实情境中的问题或项目进行积极的探究,实现对知识的主动建构;主张以学生为中心,以使學生实现自主学习为目标;倡导教师对学生的学习过程实施积极的指导与促进作用。

但在实施过程中应注意,问题或项目的难易度一定要贴合学生的实际水平。推进过程中应注意学生的主体性和教师的主导性。教师要适时引导学生的学习,引导学生综合应用前面所学内容来分析和解决问题。

(3)利用自主学习或分组探究式学习给学生一定的学习空间和自由度

教学时应适当地安排学生进行自主学习或分组探究式学习,尝试让学生安排自己的时间,规划自己的学习。在开展项目学习时,可以有意安排半开放或全开放的项目主题,让学生在一定范围内自主选择项目,合作开展学习,给学生一定的学习空间和学习自由度。

● 虑后而能得

单元实施后进行适当的评价和反思,可以考查学生达到学习目标的程度和教师的教学水平,可以检验和改进学生的学和教师的教,从而不断完善教学过程,最终有效地促进学生的发展。

评价反思时要注意做到三点:评价要精准、反馈要及时、反思要深入。其中要特别注意及时反馈的重要性,评价结果要尽快反馈给学生,让学生及时了解自己对本单元内容的掌握情况,以便及时调整之后的学习策略。

猜你喜欢

数据结构算法模块
Module 2 Highlights of My Senior Year
Module 4 Music Born in America
数据结构线上线下混合教学模式探讨
重典型应用,明结构关系
Travellng thg World Full—time for Rree
学习算法的“三种境界”
算法框图的补全
算法初步知识盘点
必修模块相关知识过关训练
数据结构与算法课程设计教学模式的探讨