今天监考排座位时出现了一些混乱。
我要求他们按顺序每列N人坐好。若学号是连续的,1到N号第1列,N+1到2N号第2列。这个好说。乱就乱在。參加考试的同学的学号不连续,中间有断号。规则说来简单。若2号、3号空缺,4号须要直接坐在1号后面。
因为手头没有名单,这对于每位同学而言,确实困难,35号必须要看到前面紧临的31号坐定才干确定自己的位置。这是一个必须顺序完毕的任务。
一时间,学生们陷入相互等待。在教室后面缩成一堆,谁也不动。最后,我和班干部採用了逐个叫号的方式才将坐位排定。
坐定之后。我对同学们仅仅知道面面相觑表达了不满。解决问题,学号小的同学应该马上行动找到自己的位置,学号大的同学紧随其后。能够相互间及时交流学号信息。确定谁前谁后。在大学中的学习,除了专业知识,其它的素养也要提高。这件事情。反映出了在共同拥有需求(早坐好,就能早发卷)下。整个群体或者是对规则缺乏理解力,或者就是相互观望相互依赖性太多。运行力、领导力在这件事情上能够体现,立马主动地行动,而不是等谁挨个叫号,培养的也就是这种素养。
我和同学们说,假设这是一场招聘会,给出一个规则,谁能够迟早掌握并及时做出行动,这个人将占得先机。假设这是在工作中的一个场景,竞争对手间谁脱颖而出,结果非常显然。
马上行动。作为一个非常重要的习惯要自己培养,事事能够培养。
考试開始了,同学们进入了紧张的答题。无聊的监考老师。此刻却是头脑中能够极尽自由的时候,各种胡思乱想。随便。
我想到。刚才的事情,就是一个排序问题。
排序,是计算机科学中的一个基本问题,不管计算机求解问题,还是日常生活中的问题,排序随处可见。这些学生这学期正学数据结构和算法。这件事,他们能够用学到的算法作指导。
在程序设计课程中,我提倡同学们自己做点卡片写上数字,按算法流程比較、移动。体验排序算法。
最简单的,直接用扑克牌就能够。
匈牙利 Sapientia 大学的大学生。将 6 种排序算法编成舞蹈。非常是好玩(点击“链接”能够看到的是当中的冒泡排序舞蹈秀)。我以前和儿子一起,拍过一个扑克版的排序视频。
传统的这些算法,都是单控制流的。程序设计、算法与数据结构课,也仅仅关注单控制流的算法。
今天的场景。能够编排成一个体现多控制的排序游戏。再说高大上一些,归为多处理器的并行排序,或者多Agent的协调,都能够。
游戏规则:制作 n 张卡片。印上随机的数字,随机的发给排成一行的 n 个游戏參与者,相邻的人能够互看卡片比較大小,必要时交换位置,最后按手持卡片中数字的顺序排好顺序。要做的基本操作仅仅是比較、交换位置,是多人同一时候进行的。
在这里,每个人。就是一个处理器,就是一个Agent。
为添加游戏的趣味性,由两组或多组人同一时候做这一件事。最快者获胜。
要在课堂上玩,简便的奖惩手段。由赢者刮输者的鼻子。
还能够让这些人坐在教室中的同一列座位上,坐着的人不动,前后相邻的人交换卡片。一样的道理。
这个游戏前,不必讲并行算法的思想。能够反复几次,学生群体借此悟到有效的策略。
除了体验排序算法,这个游戏的功能还有团队精神和合作能力的培养——每个“处理器”都须要努力,才干尽快地完毕。不论什么个人的迟疑、等待。都不利于团队终于的目标实现。不得不说,当前的大学生人人都想着自主,但凡事都等着有人统一指挥。缺少了在团队中的等量投入,自己的自主能力也得不到提高。
这个游戏,以后能够用到课堂里,也能够用到课外团队拓展训练中。用这个游戏训练过的学生,安排座位不用这么费劲,做其它事情也会不一样。
有闲的监考,带来了好点子。
=================== 迂者 贺利坚 CSDN博客专栏================= |== IT学子成长指导专栏 专栏文章的分类文件夹(不定期更新) ==| |== C++ 课堂在线专栏 贺利坚课程教学链接(分课程年级) ==| |== 我写的书——《逆袭大学——传给IT学子的正能量》 ==| ===== 为IT菜鸟起飞铺跑道,和学生一起享受快乐和激情的大学 ===== |