节点文献

数据结构与算法学习系统的设计与实现

Design and Implementation of Learning System for Data Structures&Algorithms

【作者】 李毅波

【导师】 陈建二;

【作者基本信息】 中南大学 , 计算机科学与技术, 2012, 硕士

【摘要】 数据结构课程是计算机软件理论和技术的重要基础,也是计算机学科中的核心专业课,该课程涉及大量抽象和深奥的概念、模型和算法,容易造成学习低效和困难。应用可视化技术实现数据结构和算法的动态图形演示,为解决以上问题提供了解决方案。本文在深入分析了数据结构课程的相关特点和当前已有数据结构算法演示系统的不足的基础上,设计并实现了数据结构与算法学习系统。系统采用Java Applet技术实现,实现了跨平台的访问。为数据结构学习者提供了一个学习综合平台,实现了经典算法的动态演示,通过可视化技术直观地展示算法的执行过程;构造了一个算法演示引擎,实现了用户自定义算法的演示;采用三层架构对演示引擎进行设计,将算法的实现与具体的图形表现分离开来,降低系统实现复杂度,同时也方便进行系统的扩充和维护;采用源代码解释算法和数据纠错算法,保障了算法执行数据的正确性;实现了代码测评程序,对源代码自动测评;通过Windows子进程技术创建编译和评测子程序,并利用管道技术作为数据传输载体实现程序内部通信;结合Windows平台进程技术的监控机制保证了测评程序的稳定性和健壮性。系统允许用户根据需要,自主提交算法代码,进行测评并进行图形动态演示。本文主要对算法演示引擎和代码测评程序进行详细的分析,并给出运行实例。最后对系统开发过程中的研究工作进行了总结,并对后期系统功能扩充与完善的方向进行阐述。

【Abstract】 Data structures course is not only an important foundation of the theory and technology of computer software, but also the core course of computer science. The course involves a lot of abstract and esoteric concepts, models and algorithms, making it difficult to learn. The application of visualization technology implements a dynamic graphical animation of data structures and algorithms, which provides a solution to solve the above problems. In-depth analysis of the data structures and the current lack of existing data structures algorithms animation system, a learning system for data structures and algorithms is designed and implemented.The system uses a Java applet technology to achieve a cross-platform access. It provides a learning platform for the learner of the data structure and achieves a dynamic animation of the classic algorithms, using the visualization techniques to visually demonstrate the process of implementation of the algorithm. It constructs an algorithm animation engine, which can demo the user-defined algorithms. With the three-tier design of the animation engine, the algorithm is separated from the graphics performance and the system complexity is down, as well as facilitates system expansion and maintenance. Using the source code algorithms and data error correction algorithms, the correctness of the algorithm data is ensured. A code judge system is implemented, for the evaluation of the source code. The Compiling and evaluating procedures is implemented by using the Windows sub-process technology. And use pipe technology as a data transmission carrier to achieve the internal communication. Windows platform process technology combined with the monitoring mechanism can ensure the stability and robustness of the judge system. The system allows the user to submit the algorithm code for the evaluation and graphical dynamic animation.This paper provides a detailed analysis of the algorithm animation engine and code judge procedures, and gives a running instance. Finally, the paper sums up our research during the development, and discuss the post-expansion and improvement of the system.

  • 【网络出版投稿人】 中南大学
  • 【网络出版年期】2013年 02期
  • 【分类号】TP311.52
  • 【被引频次】14
  • 【下载频次】2814
  • 攻读期成果
节点文献中: