数据结构课程设计:动态查找表

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

编号: 139

数据结构与算法课程设计

说明书

动态查找表

学院:海洋信息工程学院

专业:计算机科学与技术

学生姓名:

学号:

指导教师:

2015年 6 月26 日

动态查找表

学生姓名:银杰

指导老师:王晓莹

摘要

本课程设计说明书系统地阐述了我使用C语言在Code::Blocks软件编写的动态查找表程序的整个过程,编写的环境是win7 64位操作系统。根据题目要求,编写动态查找表使用二叉排序树,即二叉链表作为存储结构。该程序具有建立数据功能、具有数据查找功能、具有数据插入功能、具有数据删除功能等基本功能操作。

关键词:动态查找表,Code::Blocks软件,win7 64位操作系统,C#

d ynamic lookup table

Author :yinjie

Tutor :Wangxiaoying

Abstract

This course design specification system to explain the whole process of using C language in Code:: Blocks software written in the dynamic look-up table program, the preparation of the environment is win7 64 bit operating system. According to the topic request, the preparation of the dynamic look-up table using the two fork sort tree, that is, the two binary list as the storage structure. The program has the function of building data, data searching, data insertion, data deletion and so on.

Key words:dynamic lookup table, Code::Blocks software,win7 64 bit operating system,C #

目录

引言 (1)

查找的基本概念 (1)

小结 (1)

题目 (1)

第1章程序的构图设计 (2)

1.1动态查询表: (2)

1.2程序功能流程图: (2)

(1)、主函数模块 (2)

(2)、二叉排序树的生成 (3)

(3)、二叉排序树的查找模块 (4)

(4)、二叉排序树的插入模块 (4)

(5)、二叉排序树删除连接模块 (5)

(6)、二叉排序树的删除模块 (5)

(7)、二叉排序树的遍历模块 (6)

第2章详细设计的程序 (6)

各函数模块 (6)

(1)主函数模块 (6)

(2)二叉排序树的生成模块 (8)

(3)二叉排序树的查找模块 (8)

(4)二叉排序树的插入模块 (9)

(5)多态查找表删除模块 (10)

(6)二叉排序树的中序遍历模块 (12)

第3章程序测试和运行 (12)

3.1程序测试 (12)

3.2程序运行 (13)

1、主界面 (13)

2、建立二叉排序树模块界面 (13)

3、二叉排序树查找模块界面 (14)

4、二叉排序树插入模块界面 (14)

5、二叉排序树删除模块界面 (14)

6、退出程序的界面 (14)

总结 (15)

程序完成情况 (15)

有待改进之处 (15)

课程设计期间的收获 (15)

附录源代码如下 (17)

引言

查找的基本概念

查找又称为检索,就是从一个数据元素集合中找出某个特定的数据元素。查找是数据处理中最为常用的一种操作,查找算法的优劣对整个软件系统的效率影响很大,尤其当所涉及的数据量较大时,更是如此。在一个数据集合中进行查找操作可选用的方法与该数据元素集合的存储结构有很大关系。

查找是根据某个给定的值,在数据元素构成的集合中确定是否在这样一个数据元素,它的关键字等于给定值的关键字。

要进行查找,必须明确要查找对象的特征,也就是要查找元素的关键值。如果在数据集合中能找到与给定值相等的关键字,则该关键字所属的数据元素就是所要查找的数据元素,此时称该查找成功;如果查遍了整个数据元素集合也未能找到与给定值相等的关键字,则称该查找失败。

小结

当然对于这个说明书,我不可能做得至善至美,但是一些基本的格式内容还是符合要求的。首先,我对查找表进行一个简要的概述。然后,我就查找表进行了详细的分析,这是设计中很重要的一步。接下来,我把查找表中所有的设计简明清晰地展现出来,并把我在设计中遇到的问题和分析解决问题的办法做了分析。最后,在结论中,我对自己的课程设计做了总体的评价同时简述了我在这次课程设计中的收获和经验。

题目

选题十二:动态查找表

【问题描述】

利用二叉排序树完成动态查找表的建立、指定关键字的查找、插入与删除指定关键字结点。

【任务要求】

算法输入:指定一组数据。

算法输出:显示二叉排序树的中序遍历结果、查找成功与否的信息、插入和删除后的中序遍历结果(排序结果)。

算法要点:二叉排序树建立方法、动态查找方法,对树进行中序遍历。

【测试数据】

自行设定,注意边界等特殊情况。

第1章程序的构图设计

1.1动态查询表:

依照输入的一组数据{56,80,65,20}所得的二叉排序树如下(a)所示:当插入11的时候就如(b)所示。

(a)(b)

1.2程序功能流程图:

(1)、主函数模块

相关文档
最新文档