首页 > 图书中心 > 基于RAPTOR的可视化计算案例教程

前言

算法思维是计算思维的核心之一,在以往的大学计算机和计算机科学导论课程中,作者苦于没有适宜的教学平台来表现计算机科学思维,更谈不上让普通高校学生在接触计算机课程的初期,就有机会来体验和探索计算机科学的丰富乐趣与博大精深。

本书是作者在三年来“计算概论”教学实践的基础上,通过收集整理西安交通大学少年班预科二年级学生的算法作业编写而成的。目的是为计算机科学的初学者提供一个面向问题求解的实践方案。

全书主要包括两大部分,第一部分为可视化编程工具RAPTOR应用基础;第二部分为问题求解案例。书中案例大部分为设计型实验,取材于学生自选并实现的算法作业。

作为一种新型的教学工具软件,RAPTOR迄今对大部分国内读者来说仍然是比较陌生的。所以本书前两章主要介绍RAPTOR编程环境、图形和视窗编程基础和常用算法的实用程序。供初次接触RAPTOR环境的读者参考。需要对RAPTOR可视化编程工具进行深入了解的读者可参考由清华大学出版社出版的《RAPTOR程序设计案例教程》。

本书的问题求解案例是从作者教学活动中积累的上百个案例中选取的。入选案例体现了学生思维的多样性,分为“枚举和数论”、“游戏与博弈”、“图论”和“学科应用”4个部分。本书作为算法实验的入门读物,创新性主要体现在第2章“RAPTOR图形与视窗交互”、第4章“游戏与博弈”和第5章“图论”中,这些内容充分体现了可视化计算手段在提高算法的表达能力和趣味性方面的优势,对深入引导学生的计算思维能力可以起到示范作用。大学生具有求知的好奇心,本书中可视化算法的探索是在教师引导、学生自主选题的基础上完成的,而探索的成果体现在全书尤其是第6章“学科应用”中。

本书案例的编写基本依照了波利亚(George Polya)问题求解的四部法则(理解问题、制定方案、实施方案、回顾与反思)进行。全书案例的电子文件放在清华大学出版社网站上(http://www.tup.com.cn),◆基于RAPTOR的可视化计算案例教程读者可以下载后试运行,进行算法复杂性评估,并改进或者将其用于同类其他问题的求解。

为了让大学新生能够了解算法案例问题的求解过程,本书尽量保持原始案例的编写风格和多样性,这就意味着这些算法案例并不完美,存在很大的改进余地。这是本书在算法案例部分没有给出习题的主要原因,这一部分的习题就是改进和完善本书中的案例,或者将其中的某些实现方法应用到读者自身可以联想到的算法实现,这些可以作为读者自主学习的作业。

本书由程向前负责全书的构架设计与文稿编写,周梦远负责全书案例RAPTOR流程图设计、改进与调试。本书选取了西安交通大学少年103、104、111、112、113、114班的高航(求解哈密顿回路的存在)、李浩成(SCC的求解)、张钱东(24点计算的解空间探索)、陈明博(矩阵算法)、杨金成(稳定婚姻算法等)、滕一铭(中国邮递员问题)、朱煚(求关系网的最小分割)、夏子豪(视窗下的鼠标交互)、何自惟(求解冰激凌车问题)、马腾(古希腊点灯术)、黄喆(图形视窗下输入图并产生邻接矩阵)、姜博馨(人机猜数字游戏)、田凌云(视窗下的键盘交互)、段嘉炜(钟摆的动画效果)、李婧涵(阶梯数求解)、杨泽(素数环)、郭宁(狐狸与鹅的游戏)、于弦(求解绳子问题)、郭力豪(细菌繁殖与随机图)等同学的作业,以及软件103班王嘉伟(用随机法求解居住隔离模型)所提交的算法实现案例,作为全书的基本素材。

上述可视化算法案例的交流视频由少年班同学自行录制和制作,并在优酷网站上发布,有兴趣的读者可以在线观看,以了解算法案例的原作者的设计和实现意图。

西安交通大学教务处拔尖办为少年班“计算概论”课程的教学改革提供了项目支持,作者在此表示衷心感谢。

由于时间仓促,本书在文字和案例上一定存在瑕疵,恳请读者批评指正。

作者

2014年1月于西安交通大学

版权所有(C)2014 清华大学出版社有限公司 京ICP备05029640号 京公网安备11010802013248号

联系我们 | 网站地图 | 法律声明 | 友情链接 | 盗版举报 | 人才招聘