更新时间:08-03 上传会员:暖暖大将军
分类:工业大学 论文字数:14604 需要金币:1000个
摘要:算法是用来准确和完整地解决一些问题和方案。所有的问题都是通过指示来解决的。算法实现的机制是将问题的描述和解决系统化。简而言之,该算法可以根据你设置的输入在一定时间内获得您想要的输出。如果你的算法有错误或缺陷,或者不适用于某些问题,那么在运行此算法后问题将无法被解决。不同的算法如果要完成特定的任务,就会使用不同的时间、空间或者效率来进行。树形结构在很多方面都有非常重要的应用,可以用来表示层次关系。而对于计算机领域来说,树形结构是一种非常重要的非线性结构,其中二叉树是一种比较重要的树形结构,二叉树是一种重要的数据结构,二叉树是由树结点按照一定的关系存储而成的,由于其搜索效率高,所以被广泛使用。但是平时使用时树是一种非线性结构,书上在讲解树的时候也都基本上会给出形象的树形图。但是当我们自己试着实现某种树,在调试、输出的时候确只能以字符的形式顺序地输出。这给调试等方面带来了很大的不便。比如想自己实现一个二叉树, 怎么知道创建的树是否正确呢?当删除一个元素之后,怎么知道有没有破坏树的性质呢?一般是先手画出正确的树结构,然后按照层次遍历的顺序将树输出,再和手画的图比较,判断是否正确。但是每次都需要手画的话十分不方便,所以就想着写一个程序可以图形化地将二叉树画出来。能够将二叉树进行图形化显示之后,以后每当使用到二叉树,便可以更加轻松明了,一劳永逸。本课题需要将一系列算法结合起来实现一个统一的二叉树算法生成程序。在实现算法的同时,需要用C语言编写一个图形界面,为算法提供良好的可视化支持。最大化利用绘图空间的二叉树的可视化实现,对于调试过程中检查其他程序的节点关系以及教师教学都有很大的价值。
关键词: 二叉树算法;可视化实现;图形化界面
目 录
摘 要
ABSTRACT
第一章 绪论-1
1.1 背景概述-1
1.2 研究发展现状-1
1.3 研究优化内容及目标-1
1.4 论文的组织结构-2
第二章 相关案例分析-3
2.1 相关二叉树算法项目介绍-3
2.1.1 案例一:计算机编程技术-3
2.1.2 案例二:递归算法与穷举法的比较-4
2.1.3 案例三:用递归算法实现二叉树-4
2.1.4 案例四:二叉树的加密算法-5
2.1.5 案例五:常见的几种算法浅析-6
2.1.6 案例六:不借助栈的二叉树-6
2.1.7 案例七:二叉树可视化实现-7
2.1.8 案例八:可视化建立二叉树实例-7
2.2 总结-8
第三章 程序设计详情-9
3.1 基本结构图-9
3.2 二叉查找树基本结构概述-9
3.3 算法基本原理-11
3.4 算法实现-13
3.4.1 红黑树结点的插入操作-13
3.4.2 红黑树的结点删除操作-14
3.4.3 红黑树的旋转操作-14
3.5 算法时间效率分析-16
3.6 二叉树可视化实现-16
第四章 程序验证-17
4.1 操作流程-18
4.1.1 源代码测试-18
4.1.2 源代码输入细节-18
4.2 算法对比-19
4.3 问题及解决方案-21
4.3.1 软件设置错误-21
4.3.2 C语言问题-22
第五章 总结-24
参考文献-25
致 谢-27