#include "stdio.h"
#include "string.h"
#include "BiTNode.h"
//先序建立二叉树
BiTree ProCreate(BiTree T)
{
char ch;
scanf("%c", &ch);
if(ch == '#')
{
T = NULL;...
分类:
其他好文 时间:
2014-11-29 21:43:54
阅读次数:
264
最近在写数据结构中二叉树的遍历,这里总结一下:
先序递归遍历:
void PreTravel(BiTree T)
{//前序递归遍历
if(T)
{
printf("%c",T->data);
PreTravel(T->lchild);
PreTravel(T->rchild);
}
}
中序递归遍历:
void MidTravel(BiTree ...
分类:
其他好文 时间:
2014-11-28 10:16:15
阅读次数:
191
数据结构之链表数据结构之栈和队列数据结构之二叉树数据结构之排序数据结构之递归
分类:
其他好文 时间:
2014-11-16 21:17:44
阅读次数:
165
B+ 树是一种树数据结构,通常用于数据库和操作系统的文件系统中。B+树的特点是能够保持数据稳定有序,其插入与修改拥有较稳定的对数时间复杂度。B+树元素自底向上插入,这与二叉树恰好相反。B+树在节点访问时间远远超过节点内部访问时间的时候,比可作为替代的实现有着实在的优势。这通常在多数节点在次级存储比....
分类:
其他好文 时间:
2014-11-14 22:39:16
阅读次数:
294
数据结构课:二叉树上机实验。为了保证树的平衡性,使用AVL平衡树。
#include
#include
#include
struct AvlNode;
typedef struct AvlNode *Position;
typedef struct AvlNode *AvlTree;
AvlTree MakeEmpty(AvlTree T);
Position Find(int x,...
分类:
其他好文 时间:
2014-11-13 22:36:18
阅读次数:
381
题目大意:有一个书架,现在需要经常改变这些书的位置,每次询问一本书在哪或者第几本书是什么。
思路:赤裸裸的Splay,只是有些小事需要注意。因为他有的时候问你一个书在哪,这个事情不能只在Splay中就能解决,我们需要辅助他解决。注意到操作中没有加入书的操作,也就是书的总数并不会变化,而且Splay的过程中只是指针的变动,所以不会有点发生变化,所以在一开始建树的时候维护一个数组,表示这本书...
分类:
其他好文 时间:
2014-11-11 22:54:52
阅读次数:
241
关于哈夫曼树其基本定义我就在这不多说了,我写的这个哈夫曼树没有太多的功能,就是我们参考书上的一个作业,就俩个功能,一个是表示孩子双亲表示法,,还有就是吧这个最有二叉树给画出来,其他的就没有了。另外在今天我调试的时候发现我的代码还是有很多欠缺的地方的,比如哦说我的画图功能中就没有办法完整的输出,而是无法输出最后四个结点。原因我还在寻找,
下面就哈夫曼树我来谈谈我当时的构思:
首先我是吧他当作一个...
分类:
其他好文 时间:
2014-11-09 01:03:18
阅读次数:
358
二叉链表存储结构的许多基本操作都采用了递归函数,因为二叉树的层数是不定的,正确采用递归函数可简化编程。递归函数的特点:一是降阶的,二是有出口的。递归编程是简单的,但是效率是不高的,因此,基本操作既要熟悉递归编程,又要熟悉非递归编程。...
分类:
其他好文 时间:
2014-11-08 15:15:01
阅读次数:
491
逆时针旋转90度打印二叉树是一种特殊的中序遍历算法
图解逆时针旋转90度操作
实现也特别简单,跟中序遍历算法差不多,在输出节点值前,用个特殊标记记录层数并输出适当的空格就可以了。
代码:
void prtbtree(BiTNode *p,int cur)//逆时针旋转90度输出二叉树
{
if(p)
{
prtbtree(p->rch,cur+1);...
分类:
其他好文 时间:
2014-11-03 13:06:31
阅读次数:
617