您好、欢迎来到现金彩票网!
当前位置:在线斗牛棋牌游戏 > 尾递归 >

二叉排序树的应用

发布时间:2019-07-22 04:14 来源:未知 编辑:admin

  编写一个程序用来统计一个文本中各种字符出现的次数,再对各字符的ASCII码进行排序,建立一棵二叉排序树(注意:二叉排序树中无相同的数据元素),然后按照字符大小依次输出字符信息(包括字符本身和出现次数)。 要求:(1) 输出该二叉排序树的先序、中序和后序遍历。

  首先从文件中一边读字符,一边按其大小将其插入到二叉排序树中,当所有字符插入完毕,二叉排序树即建立完成。然后对二叉排序树进行中序遍历,便可按字符大小输出及其出现次数,对于用户要求查询特定字符的出现次数,可在二叉排序树中进行查找,找到后输出。

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  排序是一种十分重要的运算。所谓排序就是把一堆杂乱无章的元素按照某种次序排列起来,形成一个线性有序的序列。二叉排序树是利用二叉树的结构特点来实现对元素排序的。

  由此可见,二叉排序树是一种特殊结构的二叉树。(18(10(3,15(12,15)),21(20,21(,37))))就是一棵二叉排序树。

  思考题2:试用中序遍历二叉树的方法写出遍历二叉排序树的结果,并思考二叉排序树究竟有什么作用?。

  二叉排序树的构造过程实质上就是排序的过程,它是二叉排序树作媒介,将一个任意的数据序列变成一个有序序列。二叉排序树的构造一般是采用陆续插入结点的办法逐步构成的。具体构造的思路是:

  2、对以后的各个数据,逐个插入结点,而且规定:在插入过程的每一步,原有树结点位置不再变动,只是将新数据的结点作为一个叶子结点插入到合适的位置,使树中任何结点的数据与其左、右子树结点数据之间的关系仍然符合对二叉排序树的要求。

  思考题3:试根据上述构造二叉排序树的思路,画出待排序数据(50,54,71,23,48,55,79,32,21)的二叉排序树图。

  总结:构造二叉排序树的算法思想如下:设A={a1,a2,...,an}为一组元素的集合,

  2、在保持二叉排序树性质的前提下,依次把a2,a3,...,an插入到该树中。

  思考题4:试用Pascal语言编写一个程序,实现对未排序数据的输入、排序和输出排序结果。(要求应用二叉排序树)标准程序 参考程序(黄硕)

http://missartypants.com/weidigui/343.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有