数据结构算法演示系统
+
Data Structure Demonstration System
University:Oxbridge College,Kunming University of Science and Technology
Department:Computer Science and Electronic Information Engineering
Specialty:Computer Science and Technology
Class:2005
Students's Name:Yanlin Zheng
Student's Number:200511602150
Faculty Adviser:Fei Dai
目录
目录 I
摘要 IV
ABSTRACT V
前言 1
第1章 绪论 2
1.1课题研究背景 2
1.2国内计算机辅助教学的现状 2
1.3计算机辅助教学的发展趋势 4
1.4系统建设的目的 4
本章小结 5
第2章 需求分析 6
2.1功能性需求分析 6
2.1.1系统需求 6
2.1.2识别参与者和用例 7
2.1.3用例的事件流描述 9
2.2非功能性需求分析 18
2.2.1设计思想 18
2.2.2可行性分析 19
本章小结 20
第3章 系统详细设计 21
3.1系统总体结构图 21
3.2静态结构模型 21
3.2.1定义系统对象类 21
3.2.2定义用户界面类 25
3.2.3建立类图 31
3.3动态行为模型 31
本章小结 39
第4章 系统实现 40
4.1多线程简介 40
4.1.1线程、多线程概念 40
4.1.2实现多线程的方法 40
4.2动态算法演示模板 42
4.3算法演示的多线程设计 43
4.3.1源代码同步演示的实现 44
4.3.2动画的同步实现 45
4.3.3算法中变量值的同步实现 45
本章小结 45
结论 46
总结与体会 47
谢辞 48
参考文献 49
附录一 50
附录二 55
数据结构算法演示系统
摘要
本系统以清华大学出版社出版的C语言版《数据结构》为蓝本,合理地选择数据结构中部分算法并在系统中进行有机地组合,形成优化的动态演示系统。 它可适应读者对算法的演示数据和过程执行的控制方式的不同需求, 在计算机的屏幕上显示算法执行过程中数据的逻辑结构或存储结构的变化状况或递归算法执行过程中栈的变化状况。本系统采用C#多线程技术来实现数据结构算法的算法动态演示设计,提供及源代码跟踪、变量跟踪、模拟动态效果"三合一"的算法演示同步平台。
关键词:算法,动态演示,C#,多线程,同步
Data Structure Demonstration System
ABSTRACT
This system takes Qinghua University publishing house publication C language version "Data Structure" as a main source, reasonably chooses part of algorithms in the Data Structure and carries on in the system organically combinations, forms the optimized dynamic demonstration system. It may adapt the readers' different demands to the algorithm data-in and control modes the process execution, and demonstrates in the algorithm implementation on the computer screen the data logical organization either the memory structure change condition or the stack change condition in the recursion algorithm implementation. With C# multithread, the Data Structure CAI can provide a "tree in one" platform, on which algorithm animation, source code and variable value can be executed and shown synchronously.
Keywords: Data structures, Dynamic demonstration, C#, Multhread, Synchronous
前言
数据结构是计算机专业的核心课程,对各类算法的理解则是课程教学的重点和难点,算法动态演示作为辅助教学过程的手段则可以有效帮助学生更快的理解、掌握算法。数据结构对后续课程的学习极其重要。但该课程涉及大量的概念、定义、模型和算法,显得很抽象和深奥。在教学过程中,如果能加以计算机辅助教学,可以提高教学效果,所以编写这样的程序不仅有助于学习数据结构,同时也大大增强了学生的学习兴趣,提高学生的编程能力。这是因为,一方面利用算法演示系统的生动性和直观性,使教学内容条理化和形象化,降低了对知识理解的难度;另一方面,由于演示系统的趣味性和交互性,有利于激发学生浓厚的学习兴趣,使其愿学、乐学。
可视化是演示系统应该具备的要求。本系统采用C#多线程技术来实现数据结构算法的算法动态演示设计,提供及源代码跟踪、变量跟踪、模拟动态效果"三合一"的算法演示同步平台。
第1章 绪论
《数据结构》是计算机专业的核心课程,重点培养学生在对数据分析组织与程序设计算法思想上的综合能力。算法是数据结构的主要内容,也是数据结构教学的重点和难点。但在数据结构的教学过程中,使用传统的静态课件或"粉笔 + 黑板"教学形式很难将算法的执行过程动态地演示出来,影响了教学效果。《数据结构算法动态演示设计》是使用专业编程技术实现算法的动态展示,使学生更直观的从算法的设计思想、程序运行描述、程序运行结果同步跟踪展示等全方位的了解算法,使学生能主动积极地学习和掌握应用这些算法。
1.1课题研究背景
随着现代科学技术的迅猛发展,计算机技术已渗透到各个领域,成为各行业必不可少的工具,特别是Internet技术的推广和信息高速公路的建立,使IT产业在市场竞争中越发显示出其独特的优势,步入数字化时代,有巨大的数据信息等待着加工处理和传输,这将现实的许多东西都进入虚拟的世界当中,这都需要计算机技术的支持。同样的,的教学手段也在逐步信息化,这使得计算机辅助教学CAI的出现成为一种必然的趋势。
90 年代以来, 随着多媒体和Internet 网络的出现,计算机教育已步入一个全新的阶段,计算机辅助教学CAI作为一种先进的教学手段正逐步渗透于各类院校的各个学科。《数据结构》不仅是大学计算机专业的核心课程之一,也是非计算机专业的主要选修课程之一。该课程涉及大量的概念、数据结构和算法,理论性强又较为抽象,尤其是对算法描述的执行过程的理解是难点和重点。在课堂教学上,大量的算法不可能也无法一一详述。运用计算机辅助教学系统--《数据结构算法动态演示系统》可以使教学内容化静为动,调动学生的学习兴趣;变难为易,提高学生学习兴趣;使学生寓学于乐,培养学生的学习兴趣,与此同时,利用计算机辅助教学还可以满足学生的学习兴趣。它已成为激发学生兴趣的新方法、新手段。
1.2国内计算机辅助教学的现状
随着时代的进步,电子技术的飞速发展,全球网络化进程的加快,社会各行各业中都应用到了计算机这种现代技术工具,目前我国的教育领域也已经开始运用计算机辅助教学(Computer-Assisted Instruction,以下简称CAI)这一现代化教学手段进行教育教学。
作为一种媒体,计算机与其他教学媒体(如黑板、教科书、投影仪、电视机、录像机等)没有什么不同,能够帮助教师提高教学效果、扩大教学范围、延伸教师的教育功能。 课堂教学,在今天和今后相当长的历史时期中,仍然是教学活动的主要场所,因此计算机辅助教学(CAI)作为一种现代化的教学技术,将集中体现在课堂教学中。计算机辅助教学是利用计算机作为主要的教学媒体来进行教学活动,即利用计算机来辅助教
相关热词:cnet 数据 结构 算法 演示 系统
上一篇:
(c#net)库存管理系统论文
下一篇:
马原:环境保护与可持续发展论文(word)