论文部分内容阅读
《数据结构》课程是大部分计算机专业学生的必修课,它主要介绍了计算机基础知识,包括数据的基本存储结构、逻辑结构和一些经典的算法。这门课程不仅涉及到计算机硬件知识,比如编码理论、存取方法,而且还与软件研究关系密切。由于这门课程主要目的在于培养学习者的数据抽象能力以及学会用计算机思维思考问题的能力,所以对于初学者来说比较抽象,学习起来不容易直观接受,为了将抽象的知识形象地进行展现,所以目前产生了很多数据结构动态演示系统,由于这些系统使用的开发工具或者开发模式有一定局限性,导致这些系统有交互性差,复杂度较高,难以扩展,复用性低等缺陷。本文中提到的数据结构动态演示系统使用图形和动画实现数据结构和算法的动态演示,帮助学习者进一步理解和掌握数据结构的基本原理和算法。针对现有系统的不足之处,应用WPF技术、Silverlight技术结合MVVM设计模式,设计开发了《数据结构》课程教学动态演示系统。本系统分别在电脑客户端,手机端和Web端和设计实现了16个小的动态演示模块,包括顺序表模块、链表模块、栈模块、表达式求值模块、多项式模块、二叉树遍历模块、构建平衡二叉树模块、构建哈夫曼树模块、排序模块、查找模块,其中排序和查找模块中又包括排序和查找常用的几种方法的演示。《数据结构》课程教学动态演示系统主要有以下特点:(1)每个模块都分三层设计,模型层、模型视图层及视图层,这样极大的降低了系统耦合度,每一层都有明确的分工,减少了开发和维护难度,因此代码的复用率很高。(2)支持多平台的使用,可以轻松实现网页端和手机端的学习观看,用户的使用方式更加灵活,不受时间和设备的限制。(3)逻辑层和UI设计之间是互相独立的,逻辑测试不受其它因素的干扰,方便运行单元测试,保障系统的健壮性。本文中的系统实现了数据结构课程中主要的数据结构和算法的动态演示,内容充实有趣。与传统的数据结构演示系统相比,本系统不仅可以与用户进行良好的互动,还在平台上有可扩展的优势。