算法可视化演示软件开发毕业设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

算法可视化演示软件开发毕业设计

目录

前言 (1)

第一章绪论 (3)

第一节课题背景 (3)

第二节课题的目的与意义 (4)

第三节论文结构 (4)

第二章相关知识概述 (6)

第一节 Java知识相关概述 (6)

一、Java的发展史 (6)

二、Java的主要特性 (6)

三、JDK 平台相关信息 (7)

第二节 Java图形界面技术概述 (8)

一、 Java Swing相关概述 (8)

二、容器和布局 (10)

三、事件处理 (12)

第三节相关算法的介绍 (13)

一、冒泡排序 (13)

二、插入排序 (15)

三、选择排序 (17)

四、二叉查找树 (18)

第四节本章小结 (22)

第三章需求分析 (24)

第一节系统功能需求 (24)

一、系统设计目标 (24)

二、系统功能需求 (24)

第二节系统运行环境 (25)

第三节本章小结 (26)

第四章系统设计 (27)

第一节系统总体描述 (27)

第二节模块设计 (28)

一、算法模块设计 (28)

二、界面模块设计 (30)

第三节系统流程图 (34)

第四节本章小结 (36)

第五章系统实现 (38)

第一节可视化主界面的实现 (38)

第二节排序算法界面所实现的功能 (40)

第三节二叉查找树可视化功能的实现 (44)

第四节本章小结 (47)

第六章系统测试 (48)

第一节问题解决及测试结果 (48)

一、遇到的问题 (48)

二、解决的方法 (48)

三、测试结果 (48)

第二节本章小结 (56)

结论 (58)

致谢 (59)

参考文献 (61)

附录 (63)

一、英文原文 (63)

二、英文翻译 (75)

前言

可视化( Visualizations)计算机图形学和图像处理技术,将数据转换成图形或图像在屏幕上显示出来,并进行交互处理的理论、方法和技术。此次设计算法可视化( Algorithm Visualizations)就是利用可视化技术将算法可视化[1]。

排序是计算机程序设计中的一种重要操作,其功能是一个数据元素(或者记录)的任意序列,从新排列成一个按关键字有序的序列。在我们所学的数据结构中了解到了排序算法的原理,以及实现过程,但是不清楚它的具体过程是怎么样的。算法的概念极为抽象,算法有时也枯燥难懂,所以很多时候就提不起学生的兴趣,此次的毕业设计所研究的就是在算法基础上结合图形界面动态的演示排序算法的具体实现过程,从一定程度上也可以提起学生的兴趣,让读者不仅从理论上理解它,更是从实践过程去接受知识,给学生更深的印象。所要达到的目的是以生动、活泼、全新的教学系统,提供全新的环境提高学生的听课兴趣,增加学生的记忆。并且本次毕业设计也选择了不同的排序算法,这样在演示的过程中,我们可以根据实现的复杂程度和执行速度等方面为该系统选择合适的排序算法,使之高效率运行,进而提高对排序算法的掌握程度[2]。

二叉树的算法、结构化查询语言等的研究对数据查询有着很重要的实际意义。用二叉查找树的关系表的方法,可提高商品信息的查询效率。此次毕业

设计还选择了二叉树算法的动态演示,对研究二叉查找树是很有帮助,让大家更了解二叉查找树的实际意义,对研究更复杂的数据库关系打下了基础。

第一章绪论

第一节课题背景

随着社会和计算机技术的发展,如今,在可视化技术这个大家庭中不仅仅只有科学计算机可视化,它还包括了信息可视化、数据可视化、知识可视化等一系列的分支。数据可视化有可能帮助人类在大量数据的分析和理解,并检测模式[3]。近年来,各种可视化技术已经扩展到军事、医学、医学研究、经济、解释工程等各个领域。其中有很多问题需要在以后的研究中加以解,从整体上来说,我国的可视化技术与世界先进水平还有很大的差距。而算法可视化是研究其它更深层次领域的基础,因此在研究其它领域的可视化前,我们必须先搞清楚算法可视化这个概念。

由于数据结构中算法是算法可视化中最容易让读者理解和明白的算法,因此,此次设计主要以排序算法和二叉查找树的相关操作来研究。排序在计算机辅助设计、计算机图形学、机器人、模式识别、基因排序学工程以及统计学等领域都具有广泛的应用,因此在排序的研究不仅有理论上的重要意义,而且有更大的实际应用价值。又加上如今信息产业在快速的发展信息的流通量越来越大,这些信息数据不仅庞大而且杂乱无章,很难管理和查询,所以更加需要一种非常快捷而且有效的编排手段来整理这些数据信息,提高我们的工作效率。

第二节课题的目的与意义

设计并实现直观、容易被理解的算法的动态演示系统,是课题研究的目的。随着计算机技术的不断发展,人们提出了各种算法,算法可视化在计算机领域里有十分重要的意义,并且应用广泛。在当今信息发达的时代,面对着海量的无序数据信息,如果没有一个规则来编排和查询,就会给我们的工作和信息带来很大的不方便,所以利用计算机的高速运行和计算能力,编写出一种合适的排序软件,是十分必要的。并且在设计的过程中也能让学生更加的了解排序算法和实现过程,使他们在以后的学习和工作中能找到更加高效的排序系统,提高学习效果和工作效率。

第三节论文结构

本次的论文共有六个章节,详细的阐述了算法可视化的具体实现:

第一章,主要介绍了研究的背景、容、目的和意义。

第二章,简述相关的Java知识,进一步了解Java的发展史、特性,还介绍Java图形界面的相关知识和相关算的一些知识。

第三章,通过仔细研究,进行系统地需求分析。

相关文档
最新文档