计算机算法动态系统中关键技术的设计与实现

来源 :计算机光盘软件与应用 | 被引量 : 0次 | 上传用户:Melaniemei
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:为了演示高校计算机语言课程中的各种算法具体实现过程,激发学生们对计算机语言算法部分的兴趣,在程序语言算法的基础上开发了计算机算法动态系统,该系统深刻结合实际,运用了包括图像、声音、视频等多种形式,有助于高校计算机课程教学形象化和动态化。
  关键词:计算机语言;动态演示系统;递归算法;加密算法
  中图分类号:TP311.5
  一直以来,优质且高效的算法一直是各类软件的核心,是必不可少的一部分,这种需求近年来一直处于倍增的趋势,因此,越来越多的高校计算机相关专业开始注重学生算法知识的学习。但算法综合性较强,需要很强的思维能力和数学功底,学生们普遍都觉得难以上手。想学好算法,首先必须精通数据结构知识和一门高级语言,在此基础之上还要能学而致用,适当拓展,这些知识都不是短时间内靠机械式的记忆掌握的,需要长时间的思考与练习才能深刻领悟,显然这对于很多兴趣不够,毅力不足的学生是很难做到的。除了学生自身的原因,在教学方式上也存在着一些问题。一些教师在教授算法设计的时候只会按部就班的讲一些经典的老例子,授课形式过于单一,学生的兴趣很难被调动起来,这说明传统的教学方法是有其缺陷的,需要结合多媒体教学手段才能让课堂更生动,教学更形象。
  多媒体教学方式能够将抽象的理论知识简单化,教学过程注重寓教于乐,学生们的热情被充分调动,都能集中精神参与到课堂学习来,充分利用了多媒体演示的优点,不仅传授了知识,培养了学生的思维能力,还能活跃课堂气氛,让学习算法变成了一件有趣的事,这样何愁学生学不好呢?
  此文中主要探讨了计算机算法动态演示系统的开发过程细节以及一些设计理念,提供了一套完整的经典案例,并附有一些常用算法原理的介绍和动态演示,为了达到劳逸结合的目的,系统还内置很多小游戏,视频,音乐等让学生在学习之余得到充分放松。系统本着服务大众的信念,将会在互联网上提供给广大有兴趣的网民,让更多的不同层次的人有学习的机会。
  1 开发工具
  在系统的开发工作中,使用到了Authorware等系统,该软件来自于微软自主研发,并且能够灵活的使用图标的方式来制作多媒体软件。无论设计人员是否具有过硬的专业技能,该软件都能够提供简便的多媒体制作环境,由于其功能的强大,已经在各种设计行业的到了应用。在该系统中,计算机编程语言被极大程度的弱化,用户只需要动动鼠标来确定程序的走向,就能灵活的将文字、声音、动画等信息有机地结合在一起,并编成程序进行操作。综上所述,仅凭爱好进行视频制作的用户都能够取得较好的效果。
  2 总体设计思路
  在上述的计算机编程软件的当中,编程人员通过冒泡、选择、快速等方式对资料进行排序,并且通过顺序、二分法来进行资料的查找。并且还囊括了大量例如C++、Java等高级的计算机语言,并且能够有效的应用在C语言等高级计算机编程软件当中。高级程序员在进行操作时,能够有效应用该软件,并取得较好的应用成果。对该系统进行演示,能够方便学生了解算法的计算过程,并深入了解计算方法,以便于开展更进一步的研究。
  2.1 操作流程
  系统主要有四个主要功能,有三个设置菜单项:系统设置(主要调节窗口各项属性及背景音乐),界面设置(菜单及各类功能设置),附件设置(管理附带的游戏,音乐,视频)。
  还有一个便是最重要的算法演示部分,每一种算法都有对应的逻辑介绍和实例应用,可以点击按钮来切换不同功能,这很好的体现了结构化,自顶向下的程序设计理念。
  2.2 一些关键操作
  (1)界面设置。在观看算法演示过程中,可能会出现字体偏小或者颜色不够深导致看不清楚的问题,这时可以通过设置文本格式来解决问题,如果觉得每一个演示都要设置很繁琐,可以在主菜单的设置里面自定义一种格式,然后全部应用即可。
  (2)动态显示。在软件中调用变量值时,为了保证运行过程中变量值同步更新,需要在显示图标中输入{变量名}同时单击右键并选择“更新变量显示”选项,这种技术可以用于解决演示时间动态变化的问题。
  (3)使用模板。当多个算法的结构类似的时候为了节省时间,通常采用模板技术来实现数据结构的重用,假如当前界面是浏览算法结构状态,选中算法选项菜单下的子菜单“另存为模板”,然后设置一些附带的属性,将另存为之后的模板可以自己设置一个文件名,此时右键或F5刷新,在右边的模板窗口中出现了建好的模板,将其拖拽到相应的流程线上即可生成另一算法的结构。
  (4)动画效果。在演示系统中可以实现多种精美的动画效果除了简单的移动图标操作外,在图标上点击右键进入“图标属性”设置菜单里,通过改变某些变量的值可以控制对象的动作,比如想控制一个小球在墙壁间碰撞反弹,只需设置好位移坐标及方向向量这两个变量即可,在主界面中我们能够大量用到这项功能美化界面。
  比如说假如用户想让主界面出现动态整齐排列的文字,则可以在图标属性中的布局选项卡中设置对齐方式为水平,路径设置为沿特定路径,再分别设置好出发点和结束点的坐标值,令其初始值为0,然后设置计时器来改变该坐标值,这样文字便会出现我们想要的特效了,这项功能简单易用,用户很快能熟练上手。
  3 冒泡排序算法演示
  该算法的基本思路为:依次比较相邻的两个数,将小数放在前面,大数放在后面。下面是演示过程:
  3.1 算法设计思想
  在算法的设计当中,设计人员首先假设数组呈垂直状态,不同的元素就假想成不同大小的气泡,由于数据的重要性不同,重要的数据,就假想为重量较大的气泡,并且对所有的气泡进行从下往上的扫描。只要气泡的重量较轻,就应当确定其向上漂浮,上述扫描要反复进行几次,以便得到最为准确的结果,知道筛选出最重要的数据。
  3.2 具体实现过程
  (1)首先手工创造一个无序数列。
  (2)首先,要比较第一个与第二個数,然后按照数字的大小对其进行排序,大数字排在小数字的后面。以此类推比较后面的每两个数,直到最后两个数。
  (3)在完成第一次比较之后,才开始第二次比较,依然按照上述方法进行比较,并选出适合的数字。然后从后往前再进行一次,直到得到另一个较大的数字,以此类推,完成冒泡排序的所有步骤。
  3.3用户可操作部分
  (1)可以点击流程图中每一步中的圆形按钮即可实现该步操作的执行动画
  (2)流程图可以设置多种风格(背景色,字体,线宽等)
  (3)如需要临时切换别的算法,可点击算法结构对象然后将需要的算法模型用鼠标拖拽至流程图中,会弹出一个临时小窗口,显示另外一个算法用于比较分析教学。
  4 总结
  计算机算法演示系统是在多名专业技术人员经过长时间的不懈努力以及调试后的成果,其对教学的帮助性经的起时间的考验,学生能够通过本系统激发学习兴趣,真正能掌握识扎实的算法基础,教师也能借此提升自己的教学能力,确实是学习计算机算法的好帮手!
  参考文献:
  [1]焦继业,穆荣,郝跃.面向移动图形顶点处理器的高性能低功耗定点特殊函数运算单元设计[J].电子与信息学报,2011,33(11):2764-2770.
  [2]李肯立,郭里,唐卓.一种求解Ramsey数的DNA计算机算法[J].计算机研究与发展,2011,48(3):447-454.
  [3]赵玉岩,陆继龙,郝立波.基于里特曼相图的钠长石分配问题的计算机算法[J].吉林大学学报(地球科学版),2010,40(6):1503-1507.
  作者简介:柴项羽(1979.12-),男,吉林镇赉人,助理讲师,吉林工程技术师范学院学士。
  作者单位:广东省领南工商第一技师学院,广州 510800
其他文献
植物中可以作为畜禽饲料添加剂的中草药目前已知有100多种.其中松针、苍术、大蒜、艾叶、麦芽等已开始用于饲养业。用中草药作为畜禽的饲料添加剂,不仅可以弥补防病疫苗之不足,
犬胃的幽门部移动较大,尤其是大型犬,老龄犬.如果犬在暴饮暴食后突然的剧烈运动,就会引起胃的异常移位,发生扭转.犬的胃扭转一般为顺时针方向,发生扭转时,食管与胃交接处即贲
日前,联合国粮食与农业组织(FAO)表示,最新的统计数字表明,全球大约有22%的家畜品种面临灭绝的危险,采取果断措施遏制家畜遗传多样性的减少已成为一项刻不容缓的任务,这也正是在罗马
近期,全国各地牛肉价格涨声一片。据新华社全国农副产品和农资价格行情系统监测,超过九成省区市的牛肉价格已经高于春节期间水平,其中吉林、黑龙江、上海、重庆、云南、宁夏的价
心身疾病,是以身体症状为主,在其诊断与治疗上,心理因素具有特别重要的意义。临床上指的是由于精神、情绪负担过重而引起的神经官能症、心脏病、高血压、胃肠溃疡、哮喘、肠