论文标题

算法:使用交互式过渡系统教授算法

Algodynamics: Teaching Algorithms using Interactive Transition Systems

论文作者

Choppella, Venkatesh, Kasturi, Viswanath, Kumar, Mrityunjay, Mohril, Ojas

论文摘要

算法和数据结构在计算机科学课程中的重要性已得到充分认识。但是,对于许多学生来说,对算法有很好的了解仍然是一个挑战。 由于顺序算法的自动性质。直接通过“通过执行”方法应用“学习”存在固有的张力。这部分解释了算法动画和代码跟踪等努力的局限性。 算法动力学是我们提出和倡导的方法,将算法定位在过渡系统及其动态框架内,并为教学算法提供了有吸引力的方法。算法动力学始于以下前提:可以将算法基础的关键思想识别并包装到交互式过渡系统中。当“打开”时,算法揭示了一个过渡系统,即大多数控制方面的杂物,而相互作用则丰富了。算法的设计可以通过构建一系列交互式系统来进行,从而逐步与自动化交易交互。这些过渡系统构成了一个名义机器家族。 我们通过考虑Bubblesort来说明算法方法。经典Bubblesort算法中的五个互动过渡系统的序列最终达到最终。编码Bubblesort时,构建单个系统的行动也有所回报:一种高度模块化的实现,其原语是从过渡系统借来的。用于Bubblesort的过渡系统已被实现为交互式实验。这些基于网络的实现易于构建。算法动力学框架提供的简单性和灵活性使其成为以交互式教授算法的有吸引力的选择。

The importance of algorithms and data structures in computer science curricula has been amply recognized. For many students, however, gaining a good understanding of algorithms remains a challenge. Because of the automated nature of sequential algorithms. there is an inherent tension in directly applying the `learning by doing' approach. This partly explains the limitations of efforts like algorithm animation and code tracing. Algodynamics, the approach we propose and advocate, situates algorithms within the framework of transition systems and their dynamics and offers an attractive approach for teaching algorithms. Algodynamics starts with the premise that the key ideas underlying an algorithm can be identified and packaged into interactive transition systems. The algorithm when `opened up', reveals a transition system, shorn of most control aspects, enriched instead with interaction. The design of an algorithm can be carried out by constructing a series of interactive systems, progressively trading interactivity with automation. These transition systems constitute a family of notional machines. We illustrate the algodynamics approach by considering Bubblesort. A sequence of five interactive transition systems culminate in the classic Bubblesort algorithm. The exercise of constructing the individual systems also pays off when coding Bubblesort: a highly modular implementation whose primitives are borrowed from the transition systems. The transition systems used for Bubblesort have been implemented as interactive experiments. These web based implementations are easy to build. The simplicity and flexibility afforded by the algodynamics framework makes it an attractive option to teach algorithms in an interactive way.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源