二叉树算法的动画演示大学论文.doc

上传人:知**** 文档编号:89791095 上传时间:2023-05-13 格式:DOC 页数:24 大小:451.50KB
返回 下载 相关 举报
二叉树算法的动画演示大学论文.doc_第1页
第1页 / 共24页
二叉树算法的动画演示大学论文.doc_第2页
第2页 / 共24页
点击查看更多>>
资源描述

《二叉树算法的动画演示大学论文.doc》由会员分享,可在线阅读,更多相关《二叉树算法的动画演示大学论文.doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、本科毕业论文(设计)题 目: 二叉树算法的动画演示 摘要现代社会是信息化的社会,国家对计算机方面的人才的重视以及社会对高素质计算机人才的缺乏,使得高校越来越重视计算机方面的教学工作。算法是计算机领域的一个重要的分支,其中二叉树的算法是计算机教学中的基础和重点环节。因此,研究一个更加形象生动利于学生理解的二叉树算法演示程序是非常有必要的。本文主要介绍了二叉树算法的动画演示软件的开发背景、开发意义、应用目标、技术简介、可行性分析、系统分析与设计、系统实现、出现的问题及解决方案。系统综合运用了数据结构的相关知识理论,采用Flash、HTML和CSS技术,主要利用了Flash、HTML强大的人机交互能

2、力。系统包括数据结构算法演示网站和二叉树算法的动画演示软件。其中二叉树算法的动画演示软件包括二叉树的遍历、二叉树遍历算法的应用、二叉树的创建、二叉树的线索化、树和森林的基本操作、哈夫曼树六个模块。本系统突出从教师教学环节中的难点和学生易于出错的知识点这两方面出发,解决了现有二叉树算法演示软件不能满足计算机教师教学要求的问题,可以使学生更好地理解二叉树的基本算法及操作,也可以使教师的教学工作更加高效。关键词:Flash;HTML;CSS;二叉树AbstractThe modern society is an information society. The situation of our co

3、untry values computer talents and the lack of computer talents, making universities pay more and more attention in teaching computer work. Algorithm is an important branch of computer field, where the algorithm of binary tree is the foundation and key point of computer teaching. Therefore, to study

4、a more vivid binary tree program that students can easily understand is very necessary. Paper mainly introduced the topic development background, significant of developing, application objectives, introduction of technology, feasibility analysis, system analysis and design, system implementation, pr

5、oblems and solutions. The system is based on Flash, HTML and CSS technologies. The system uses the relevant knowledge theory of data structure. The system takes advantage of Flash, HTML powerful interactive capabilities.System includes a data structures algorithms demo site and binary tree algorithm

6、 animation software. Binary tree algorithm animation software which includes binary tree traversal, binary tree traversal algorithm applications, binary tree creation, threaded binary tree, trees and forests basic operations, Huffman tree. The system highlights from the difficulties in teachers teac

7、hing and error points in students learning to solve problem of the existing binary tree algorithm demo software does not meet the requirements of teaching computer. So that students can understand the basic algorithm and operation of binary tree better and also allows teachers work more efficient.Ke

8、ywords: Flash;HTML;CSS;Binary tree目 录1. 引言11.1开发背景11.2 开发意义11.3 应用目标11.4 可行性分析21.4.1技术可行性21.4.2经济可行性22技术简介32.1 Flash 技术32.1.1Flash软件特性32.1.2 Flash基本功能32.1.3Flash脚本语言32.2 超文本标记语言42.2.1语言特点42.3 级联样式表42.3.1使用方式52.2.2布局特点53. 系统分析63.1 系统功能分析63.2 模块分析64.系统设计与实现104.1介绍网站模块设计与实现104.2二叉树算法的动画演示软件模块设计与实现114.2

9、.1二叉树的创建模块设计与实现114.2.2树和森林的基本操作模块设计与实现124.2.3哈夫曼树模块设计与实现145.出现的问题及解决方案165.1数据结构算法演示网站的问题及解决方案165.2树和二叉树的演示的问题及解决方案165.2.1二叉树的遍历模块的问题及解决方案165.2.2二叉树的创建的问题及解决方案175.2.3二叉树的线索化的问题及解决方案17结论18致谢19参考文献201. 引言1.1开发背景现代社会是信息化的社会,各行各业都用到计算机,社会需要大量的高素质计算机人才。随着国家对计算机方面的人才的重视以及社会对于高素质的计算机人才的缺乏,使得高校越来越重视计算机科学的与技术

10、教学工作。数据结构是计算机科学中的一门综合性的专业基础课,数据结构是计算机科学技术专业教学计划中的核心课程之一,也是其他非计算机专业的主要选修课之一。数据结构的研究不仅涉及计算机软件的研究范围,而且和计算机硬件的研究也有密切的关系。而树和二叉树的算法是数据结构教学中的基础和重点环节。传统的计算机数据结构教学中由于缺乏演示软件或者演示软件不够形象生动,使得学生对于这部分重点内容的掌握程度不够,极大地影响了教师教学的效率和教学进度。因此研究一个更加形象生动利于学生理解的二叉树算法演示软件是非常有必要的。二叉树算法的动画演示软件可以使学生更好地理解二叉树的基本算法及操作,也可以使教师的教学工作更加高

11、效。1.2 开发意义该项目开发的软件为基于Flash、HTML(Hypertext Markup Language)和CSS(Cascading Style Sheets)技术的二叉树基本算法演示软件。目前计算机教师的教学工作面临着二叉树教学演示软件严重不足的问题,同时现有的二叉树教学演示软件不够形象生动,使得学生难以理解二叉树的基本知识和操作。本软件正是鉴于二叉树教学软件不能满足计算机教学工作的现状构思出来的。二叉树算法的动画演示软件设计完成后可用于高校计算机数据结构教学的工作中。该软件突出从教师教学环节中的难点和学生易于出错的知识点这两方面出发,解决了现有二叉树算法演示软件不能满足计算机教

12、师教学要求的问题。1.3 应用目标二叉树算法的动画演示软件基于Flash、HTML和CSS技术,本软件应用于高校的计算机数据结构的教学工作中,可以演示二叉树的先序递归遍历、中序递归遍历、后序递归遍历、先序非递归遍历、中序非递归遍历、后序非递归遍历、统计二叉树的叶子结点数、计算二叉树的深度、查找数据元素、结合“扩展先序遍历序列”创建二叉树、中序线索化二叉树、中序线索化二叉树查找前驱、中序线索化二叉树查找后继、树转换为二叉树、二叉树转换为树、二叉树转换为森林、森林转换为二叉树、哈夫曼树的构造和哈夫曼编码。计算机教学工作者在运行二叉树算法的动画演示软件中可以控制程序的播放,使得教师在教学中在学生不易

13、于理解的地方多次演示,便于学生理解。学生也可以在教师的指导下借助该软件对二叉树的基本算法进行预习、复习。1.4 可行性分析我国目前正处于信息化飞速发展的时代,国家和社会的现代化建设急需具备全面技术能力的高素质计算机人才。在此背景下,国家不断加大对高校计算机学科教学研究工作的扶持力度。为了进一步响应国家号召,为国家输送技术过硬的计算机人才,各高校已经越来越重视对计算机学生的基础知识的培养和他们对基础知识的掌握情况。所以二叉树算法的动画演示软件有其开发的需求。当二叉树算法的动画演示软件开发成功后,计算机教学工作者可以将其应用到数据结构这门课程的教学工作中,让学生把数据结构的基本算法掌握得更加扎实。

14、同时本软件的平台是数据结构算法演示网站,这个平台可以为以后开发人员提供二次开发的平台和参考借鉴的地方。所以开发二叉树算法的动画演示软件非常有必要,而且鉴于现在计算机软件及语言的发展,可以使开发人员在很好地满足计算机教学工作者的教学要求下开发出形象生动的软件,所以开发本软件是可行的。1.4.1技术可行性本系统包括数据结构算法演示网站和二叉树算法的动画演示软件。其中数据结构算法演示网站所用开发技术为HTML和CSS,二叉树算法的动画演示软件所用的开发技术为Flash。这些技术都已经成熟,所以本系统具备技术可行性。1.4.2经济可行性目前国家每年对计算机方面的研究的投资和支持力度在逐年增加,以中关村

15、为首的一大批高新技术产业园也在全国各地茁壮发展起来,许多计算机公司也在国家的扶持下越来越壮大。在各高校,国家也为一大批计算机学科带头人下拨科研经费,为学校建立实验室。而本系统的开发工作可在高校的实验室中进行,不需要额外投资硬件设备,所以本系统具备经济可行性。2技术简介2.1 Flash 技术Flash是一种用于动画创作与应用程序开发的技术。现在流行的Flash技术是由macromedia公司推出的交互式矢量图和Web动画的标准。Flash为创建数字动画、交互式Web站点、桌面应用程序以及手机应用程序开发提供了功能全面的创作和编辑环境。Flash广泛应用于建立形象生动的应用程序,它包含丰富的声音

16、、图形、视频和动画等形式。可以在Flash中建立图形、动画等原始内容或者从其它应用程序(如Photoshop或Illustrator)导入他们,快速设计简单的动画,以及使用Adobe ActionScript3.0开发与人的交互式项目。计算机开发人员可使用它来创建演示文稿、应用程序和允许用户交互的项目。Flash可以包含生动的动画、视频、复杂演示文稿和应用程序以及介于它们之间的任何内容。2.1.1Flash软件特性Flash广泛应用于基于互联网网页的矢量动画设计。利用Flash制作出来的影片占用存储空间较小。使用Flash创作出的影片的存储格式特殊,而且Flash播放器被应用于全世界97%以上

17、的网络浏览器中。Flash作为平台实现了Macromedia提出的“富因特网应用”概念。2.1.2 Flash基本功能Flash动画设计有三个逻辑上紧密相连的基本功能,它们是整个Flash动画设计知识体系中最重要的、也是最基础的,包括:绘图和编辑图形、补间动画和遮罩。绘图和编辑图形是创作Flash动画的基本功能。Flash包括多种绘图工具,这些绘图工具可以在不同的绘制模式下工作。Flash提供的三种绘制模式决定了“舞台”上的对象的编辑方式和交互方式。补间动画在Flash动画的三个基本功能中很重要,是Flash动画设计的核心功能,它有动画补间和形状补间两种形式。动画补间是用于图形及元件的动画,形

18、状补间是用于形状的动画。遮罩是Flash动画设计三大基本功能中的出彩点,在配合补间动画的基础上,遮罩可以使用户创造更多丰富多彩的动画效果。遮罩是遮罩图层中的图形或者文字等对象,透出下面图层中的内容。遮罩主要有两种用途:一种是用来遮罩住某一元件的一部分,从而实现一些特殊的效果;另一种是用在整个场景或一个特定区域,使场景外的对象或特定对象外的对象不可见。2.1.3Flash脚本语言Flash的脚本语言ActionScript是一门吸收了C+(C plus plus)、Java以及JavaScript等编程语言部分特点的新的语言;它使用英文单词为编程语言给Flash影片设置指令。Flash脚本语言使

19、Flash影片比普通的按照线性模式播放的动画具备强大得多的人机交互能力。ActionScript是Flash内置的编程语言,用它为动画编程,可以实现各种动画特效、对影片的良好控制、强大的人机交互及与网络服务器的交互功能。在某些情况下,ActionScript还可以指挥用户的操作系统、浏览器、各种外部程序等,并向其传递参数。正是由于ActionScript具备如此强大的交互能力,而二叉树算法的动画演示软件需要满足计算机教师教学活动中的交互需求,所以在选择开发二叉树算法的动画演示软件的时候我选择了Flash脚本语言。2.2 超文本标记语言由于二叉树算法的动画演示软件演示的是数据结构的一个方面的内容

20、,为了便于以后将数据结构的其它方面演示程序加入进来,所以选择用网页作为载体,即把二叉树算法的演示软件的可执行文件链接到网页中的超链接上,所以需要用到超文本标记语言来制作一个网站。超文本标记语言(英文缩写HTML)是标准通用标记语言的下一个应用,也是一种规范,一种标准,它通过标记符号来标记要显示的网页中的各个部分。网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容(如:文字如何处理,画面如何安排,图片如何显示等)。2.2.1语言特点超文本标记语言功能强大,支持不同数据格式的文件嵌入,其主要特点如下:简易性:超文本标记语言版本升级采用超集方式,从而更加灵活方便

21、。可扩展性:超文本标记语言的广泛应用带来了加强功能,增加标识符等要求,超文本标记语言采取子类元素的方式,为系统扩展带来保证。平台无关性:超文本标记语言可以使用在广泛的平台上。正是由于超文本标记语言如此强大、简单易学,所以在选择制作网站时我选择了用超文本标记语言来编写网站。2.3 级联样式表二叉树算法的动画演示软件需要一个网站为载体,在编写这个网站时需要对其网页风格进行设计,所以需要用到级联样式表技术。级联样式表简称为“CSS”(Cascading Style Sheet)。级联样式表是一种用来表现HTML或XML等文件样式的计算机语言。在进行网页风格的设计时,用级联样式表可以精确地指示网页元素

22、的位置,外观及效果。用级联样式表不仅可以对网页对象和样式进行编辑,还可以进行初步交互设计。2.3.1使用方式级联样式表有三种使用方式:外部样式、内页样式和行内样式。其中,外部样式是将网页链接到外部样式表;内页样式是在网页上创建嵌入的样式表;行内样式是应用内嵌样式到各个网页元素。为了在数据结构的算法演示网站上的部分网页拥有相同的样式,所以在选择级联样式表的使用方式时我用了外部样式表。外部样式表可以在一个外部表中定义样式,然后其它网页选用和其一样的样式定义,并将它们链接到所有网页,以保证网页外观的一致性。外部样式表在修改时也非常便捷,当要更改样式时,只需在外部样式表中修改一次即可使所有与该样式表相

23、链接的网页都更改。2.2.2布局特点使用CSS进行布局具有以下几种优点:使代码变得精简,减少重构难度,当修改布局时只需修改CSS文件中的一个代码即可;加快了网页访问速度,提高用户对网站的体验度;便于搜索引擎抓取,提高网站的访问量。3. 系统分析3.1 系统功能分析基于Flash、HTML和CSS的数据结构算法的演示包括介绍网站和二叉树算法的动画演示软件。其中介绍网站主要包括绪论、线性表、栈、队列、串、数组、广义表、树和二叉树、图、排序、查找和文件等部分。二叉树算法的动画演示软件主要实现了二叉树的遍历、二叉树的遍历的应用、二叉树的创建、二叉树的线索化、树和森林的转化、哈夫曼树等模块。每个模块又包

24、含许多子模块,其中:二叉树的遍历包括先序递归遍历、中序递归遍历、后序递归遍历、先序非递归遍历、中序非递归遍历和后序非递归遍历;二叉树的遍历的应用包括统计二叉树的叶子结点数、计算二叉树的深度、先序查找数据元素、中序查找数据元素和后续查找数据元素;二叉树的线索化包括中序线索化二叉树、中序线索化二叉树的前驱查找和中序线索化二叉树的后继查找;树和森林的转换包括树转换为二叉树、二叉树转换为树、二叉树转换为森林和森林转换为二叉树;哈夫曼树包括哈夫曼树的构造和哈夫曼编码。3.2 模块分析本系统基于Flash、HTML和CSS,主要包含介绍网站和二叉树算法的动画演示软件,其中介绍网站的功能模块图如图3-1所示

25、:数据结构算法演示绪论线性表栈队列串数组广义表树和二叉树图排序查找文件二叉树的线索化树和森林的转换二叉树的遍历二叉树遍历的应用二叉树的创建哈夫曼树图3-1介绍网站功能模块图 二叉树的遍历的功能模块图如图3-2所示:二叉树的遍历递归遍历非递归遍历后序非递归遍历中序非递归遍历先序非递归遍历后序递归遍历中序递归遍历先序递归遍历图3-2二叉树的遍历功能模块图二叉树遍历算法的应用的功能模块图如图3-3所示:二叉树遍历算法的应用查找数据元素计算二叉树的深度统计二叉树的叶子结点数后序查找数据元素中序查找数据元素先序查找数据元素图3-3二叉树遍历算法的应用功能模块图二叉树的线索化的功能模块图如图3-4所示:二

26、叉树的线索化二叉树的中序线索化中序线索二叉树的后继查找中序线索二叉树的前驱查找图3-4二叉树的线索化的应用功能模块图树和森林的转换的功能模块图如图3-5所示:树和森林的转换森林与二叉树的转换树与二叉树的转换森林转换为二叉树二叉树转换为森林二叉树转换为树树转换为二叉树图3-5树和森林的转换的应用功能模块图哈夫曼树的功能模块图如图3-6所示:哈夫曼树哈夫曼编码哈夫曼树的构造图3-6哈夫曼树的应用功能模块图4.系统设计与实现4.1介绍网站模块设计与实现数据结构算法演示网站包括绪论、线性表、栈、队列、串、数组、广义表、树和二叉树、图、排序、查找、文件等部分。计算机教学工作者可登陆到数据结构算法演示网站

27、,可通过点击网站导航上的链接:绪论、线性表、栈、队列、串、数组、广义表、树和二叉树、图、排序、查找、文件,即可访问相关页面的信息。由于网站各页面的实现方法相同,在这以树和二叉树的网页为例进行说明。进入数据结构算法演示网站,点击树和二叉树链接,即可进入树和二叉树页面如图4-1所示:图4-1树和二叉树页面为了使数据结构网站的各个网页的导航条以及风格相一致,所以为每个页面配置相同的CSS文件,然后在每个页面中调用这个CSS文件。这个CSS文本文件的实现代码如下所示:body margin: 0px;/*设置外边距为0像素*/ padding: 0px;/*设置内边距为0像素*/ text-align

28、: center;/*设置文字对齐方式为居中*/#containerwidth:1250px;/*设置div的宽度为1250像素*/margin-left:auto;/*设置左外边距为自动模式*/margin-right:auto; /*设置右外边距为自动模式*/margin-top:50px; /*设置上外边距为50像素*/float:left; /*设置浮动模式为左浮动*/text-align:center; /*设置文字对齐方式为居中*/hr /*HTML水平线标签*/margin-left:50px; /*设置左外边距为50像素*/margin-right:50px;#headerte

29、xt-align:center;font: 36px Arial, 宋体; /*设置文字大小为36像素,字体为Arial或宋体*/font-weight:bold; /*设置文字格式为粗体*/#surroundwidth:100%; /*设置宽度为100%*/#menu ul#menu limargin-left:10px; /*设置左外边距为10像素*/margin-right:10px; /*设置右外边距为10像素*/float:left; /*设置浮动模式为左浮动*/font: 24px Arial, 宋体; /*设置文字大小为24像素,字体为Arial或宋体*/#contentfont

30、: 20px Arial, 宋体; /*设置文字大小为20像素,字体为Arial或宋体*/text-align:left; /*设置文字对齐方式为左对齐*/margin-left:50px; /*设置左外边距为50像素*/margin-right:50px; /*设置右外边距为50像素*/line-height:36px; /*设置行高为36像素*/4.2二叉树算法的动画演示软件模块设计与实现二叉树算法的动画演示软件包括二叉树的遍历模块、二叉树遍历的应用模块、二叉树的创建模块、二叉树的线索化模块、树和森林的基本操作模块、哈夫曼树模块。计算机教学工作者可以点击数据结构算法演示网站中树和二叉树网页

31、中的相关链接,即可打开相应软件的可执行文件。由于二叉树算法的动画演示软件各模块的设计原理与方法相似,这里仅以二叉树的创建模块、树和森林的基本操作模块以及哈夫曼树模块为例进行解释说明。4.2.1二叉树的创建模块设计与实现二叉树的创建模块所演示的创建二叉树的方法为结合“扩展先序遍历序列”创建二叉树。点击数据结构算法演示网站的树和二叉树网页,进入该网页后,点击二叉树的创建链接,系统即可调出二叉树的创建的可执行文件。为了便于教师讲解,在此模块的界面上添加了关于创建二叉树的方法的描述,如图4-2所示:图4-2二叉树的创建演示界面为了方便教师的讲解,在此界面加入了“观看示例”的按钮来控制演示模块的播放,其

32、代码如下:stop(); /*控制影片时间轴某一片段的停止*/var myClick:Function=function(evt:MouseEvent) /*定义了鼠标响应函数*/if(evt.currentTarget.name=Exa) /*如果元件实例的实例名为”Exa”*/gotoAndPlay(2); /*跳转至第2帧并从该帧开始播放*/;Exa.addEventListener(click,myClick);4.2.2树和森林的基本操作模块设计与实现树和森林的基本操作模块主要分为四个子模块:树转换为二叉树模块、二叉树转换为树模块、二叉树转换为森林模块和森林转换为二叉树模块。点击数据

33、结构算法演示网站的树和二叉树网页,进入该网页后,点击树和森林的基本操作链接,系统即可调出树和森林的基本操作的可执行文件,如图4-3所示:图4-3树和森林的基本操作演示界面由于树和森林的基本操作的四个子模块设计和实现方法相似,在此以树转换为二叉树模块为例进行解释说明。在演示树转换为二叉树的每个步骤时为了形象地表现出每步的变化,在“加线”和“去线”的两个步骤中每条直线和说明文字通过变换颜色实现闪烁来演示变化,如图4-4所示:图4-4说明文字与直线闪烁演示在演示树转换为二叉树模块时为了方便教师演示以及学生思考,在设计时每个步骤都添加了“下一步”按钮,教师可以在演示完每一步后根据学生的掌握情况决定是否

34、在这一步骤进一步讲解或是进入下一步骤的学习,如图4-5所示:图4-5具有“下一步”按钮的界面其中“下一步”按钮的实现代码如下:stop();/*控制影片时间轴某一片段的停止*/var myClick3:Function=function(evt:MouseEvent)/*定义了鼠标响应函数*/if(evt.currentTarget.name=Nex)/*如果元件实例的实例名为”Nex”*/gotoAndPlay(14);/*跳转至第14帧并从该帧开始播放*/;Nex.addEventListener(click,myClick3);4.2.3哈夫曼树模块设计与实现哈夫曼树模块主要分为两个子模

35、块:哈夫曼树的构造模块和哈夫曼编码模块。点击数据结构算法演示网站的树和二叉树网页,进入该网页后,点击哈夫曼树链接,系统即可调出哈夫曼树的可执行文件。在设计哈夫曼树的构造时,为了将哈夫曼树构造的原理表达清楚,每个用于构造的结点都被放到了界面上方,当构造用到哪个结点时,就让哪个结点变换颜色,并把结点放到演示界面的中间用于创建新的二叉树,新的二叉树根结点的权值为其左右子树根结点权值之和,如图4-6所示:图4-6哈夫曼新二叉树构造演示界面在演示时,为了表现已删除的结点,将界面上方的相应结点变为红色,为了表现新得到的二叉树加入到二叉树集合之中,把新得到的结点也放到界面的上方,如图4-7所示:图4-7哈夫

36、曼树构造删除结点演示界面在设计哈夫曼编码子模块时,为了便于查询每个结点的哈夫曼编码,在演示界面中把每个结点都做成一个按钮,当用户点击结点按钮时即可在演示界面中看到相应结点的哈夫曼编码,如图4-8所示:图4-8哈夫曼编码演示界面5.出现的问题及解决方案5.1数据结构算法演示网站的问题及解决方案数据结构算法演示网站在开发时遇到的问题及解决方案如下:在开发数据结构算法演示网站中的导航条时,无法使每个网页的表头和设计风格相一致。解决方案为:为导航中的每个链接网页使用同样的级联样式表设置,所以当设置好其中的一个链接网页的级联样式表后,其它链接网页的级联样式表也做相同处理,即可将每个网页的表头及页面的风格

37、设置为一样的以提高用户的体验度。5.2树和二叉树的演示的问题及解决方案二叉树算法的演示软件在开发中遇到了一系列问题,刚开始时由于对Flash技术也在学习之中,所以出现了一些关于Flash软件的使用问题以及Flash脚本语言运用的问题,在查阅了相关课本、课外书籍以及网上的教程后,在一段时间的不断尝试后,这些问题被成功地解决了。5.2.1二叉树的遍历模块的问题及解决方案二叉树的遍历模块在开发时遇到的问题及解决方案如下:在开发二叉树的遍历模块时,需要用到大量的按钮,而Flash CS3本身所提供的公用库中按钮不够美观,并且与整体二叉树算法的动画演示软件的界面风格不是特别的适合。解决方案为:此后在参考

38、了Flash CS3的网上教程及课外相关书籍后,我了解到在Flash CS3中可以导入外部的图片,所以我从网上下载了大量的按钮素材。在这些按钮素材中,我挑选了与二叉树算法的动画演示软件界面风格相一致的按钮。但是这些按钮素材都是带着背景的,不能直接应用于开发之中,所以我用Photoshop中的魔术棒等工具将所需要的素材部分抠出,制作成新的图片,并将其导入到二叉树的遍历的库中,再拖拽到新建的按钮元件的舞台中央。在制作按钮元件时,按钮元件无法实现的每个图案素材在四个状态中的位置完全一样。解决方案为:先在按钮元件的第一帧弹起状态中,把图案素材放到一个合适的位置,然后点击修改菜单中的时间轴中的转换为关键

39、帧或者按键盘上的F6键,执行三次同样的操作,则按钮的指针经过状态、按下状态和单击状态都会和第一帧弹起状态完全一样。此时,再对按钮元件进行修改时即可保证按钮的四个状态中图案素材都在同一位置上。在制作中序遍历时,想使用在先序遍历中已经制作好的按钮元件,可当把已经制作好的按钮元件拖拽到舞台中央,在对其进行编辑时会使原来在先序遍历中的按钮的文字也会改变。解决方案为:右键点击库中已经制作好的按钮元件,点击直接复制选项,使已有的元件作为创建新元件的起点,来创建具有不同外观的各种版本的按钮元件,即改变的是按钮实例而不是按钮元件。点击按钮元件,不能给按钮元件添加Flash脚本语言。解决方案为:Flash CS

40、3采用的脚本语言是ActionScript3.0,而ActionScript3.0与之前Flash的脚本语言ActionScript2.0不同,不能直接给按钮元件添加脚本语言,只能在按钮元件所在的帧上添加脚本语言。选择元件所在帧,在帧上右键点击,选择动作选项,即可在动作面板中添加Flash脚本语言ActionScript3.0。使用gotoAndPlay()和gotoAndStop()时不能实现从一个场景到另一个场景的跳转。解决方法为:使用gotoAndPlay()和gotoAndStop()时,其中的参数不能用中文,要用英文或数字。点击窗口菜单中的其它面板,再点击场景,调出场景面板,把其中的

41、场景名改为英文和数字即可。5.2.2二叉树的创建的问题及解决方案在开发二叉树的创建模块时,想利用已经开发好的二叉树的遍历模块中制作好的按钮元件,但是从库中却找不到其它模块已经制作好的按钮元件。解决方案为:点击文件菜单中的导入选项,再点击其中的导入外部库选项,把想再次利用的元件拖到当前库中即可。在不同的帧上拖拽按钮元件时,不能精确地放到舞台中的同一位置而且使用自由变换工具后也不能保证每个按钮元件的长和宽都相同。解决方法为:对按钮元件使用自由变换工具后,在按钮元件的属性面板中的宽、高、X轴和Y轴处输入相同的数值即可。在更改某一个文本框的位置时,有时其它文本框的位置也会被改动。解决方案为:将不同的文

42、本框放到不同的图层上,在修改某一图层上的文本框时,为了避免其它图层上的文本框或其它对象被改动,可以先将不进行编辑的图层锁住,然后再对当前图层进行编辑即可。5.2.3二叉树的线索化的问题及解决方案用选择工具对对象进行移动操作时,无法将对象精确地移动到某一位置。解决方案为:在对象的属性面板中坐标处输入数值即可。在Flash中没有可以直接画箭头的工具。解决方案为:一种方案为先在Word中用箭头工具画出箭头后复制,然后再粘贴到Flash CS3中再用任意变形工具和选择工具进行调整。另一种方案为在在Flash CS3中插入文本,设定字符为Wingding3类型,然后从键盘上输入,即可在屏幕上显示出箭头。

43、结论本文主要介绍了基于Flash、HTML和CSS的数据结构算法演示网站和二叉树算法的动画演示软件的设计和实现,重点讨论了其中涉及到的已经成熟的理论方法和技术知识。通过开发数据结构算法演示网站和二叉树算法的动画演示软件,夯实了我对数据结构中二叉树算法和基本操作知识的理解,也培养了我自学开发语言的能力,在开发过程中锻炼了我综合运用所学专业知识以及思考解决问题的能力,为以后继续学习研究和提升自己实际开发能力奠定了良好的基础。在分析需求和设计开发数据结构算法演示网站和二叉树算法的动画演示软件的过程中,我总结得出以下结论:1.在开发数据结构算法演示网站时要整体考虑网站各个网页的设计风格、导航条和超链接

44、的颜色等。要考虑网站的色彩搭配,使用户看上去舒服不突兀,提高用户的体验度。2.在做需求分析时,要考虑用户需求以及可行性。3.Flash的脚本语言ActionScript3.0具备强大的人机交互能力,可以实现各种动画特效、对影片的良好控制以及与网络服务器的交互功能。4.在制作二叉树算法的动画演示软件时,要考虑学生难以理解的地方以及计算机教学工作者想要教授的重点知识,对这些方面要重点演示并加以说明。在演示算法时,要把算法的理论以及二叉树的遍历等过程用生动形象的方式演绎出来,提高学生的学习效率和教师的教学效率。5.遇到自己不能解决的问题时,可以查阅相关课本、课外书籍以及网上教程,并通过实际操作,解决遇到的问题。致谢经过三个多月的努力学习和设计开发,我的毕业设计二叉树算法的动画演示终于完成了。首先,我要感谢学校给予我们这次做毕业设计的机会,在这次完成毕业设计的过程中,充分锻炼了我的分析能力、自学能力以及开发能力。在这期间学校给予我们优雅的环境和便利的措施方便我们学习并完成毕业设计,使得我们的实际动手能力得到了提高,为我们更好地适应社会奠定了良好的基础。再次对我学习生活了四年的母

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁