先来说说‘树’(摘录自维基百科):在计算机科学中,树(英语:tree)是一种抽象资料型别(ADT)或是实作这种抽象资料型别的数据结构,用来模拟具树状结构性质的资料集合。它是由n(n>=1)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的...
                            
                            
                                分类:
其他好文   时间:
2015-04-09 10:30:02   
                                阅读次数:
122
                             
                    
                        
                            
                            
                                二叉树的遍历原因:将序列编程图或者二叉树的形式,确实很直观。但是,最终的处理是交给计算机,计算机的处理只有判断、循环等,也就是只可以处理先行序列。而二叉树的遍历就是将序列的树结构编程线性序列,将线性序列交给计算机处理。二叉树的遍历大致分为四种:前序遍历、中序遍历、后序遍历,层序遍历。前序遍历(从上向下):从根节点开始并且取根节点值,遍历根节点的所有左子树以及左子树的所有节点,然后再进行根节点的右子树...
                            
                            
                                分类:
其他好文   时间:
2015-04-07 17:50:10   
                                阅读次数:
135
                             
                    
                        
                            
                            
                                F - Count the Colors
Time Limit:2000MS Memory Limit:65536KB 64bit IO Format:%lld & %llu
Submit Status Practice ZOJ 1610
Description
Painting some colored segments on a line, some previously pain...
                            
                            
                                分类:
其他好文   时间:
2015-04-07 10:05:31   
                                阅读次数:
164
                             
                    
                        
                            
                            
                                1.题目描述:点击打开链接
2.解题思路:本题考查四分树的遍历。本题实质上是已知一棵四分树求黑色结点的编号;已知黑色结点的编号反过来构造四分树。第一种情况相当于编码,我们用先序遍历解决。用encode函数表示给整个四分树编码,如果发现内部既有0又有1出现,那么将其均分为四份,递归编码;反之则统计该结点的颜色以及路径。这里把路径编码成一个十进制数,便于转换。同理,如果已知了黑色结点,那么首先解码出...
                            
                            
                                分类:
其他好文   时间:
2015-04-04 09:12:56   
                                阅读次数:
174
                             
                    
                        
                            
                            
                                求解二叉树的高度
树是递归定义的,所以用递归算法去求一棵二叉树的高度很方便。
#include   
#include   
using namespace std;  
  
struct Node {  
    char data;  
    Node *lchild;  
    Node *rchild;  
};  
  
void High(Node *T, int &h)...
                            
                            
                                分类:
其他好文   时间:
2015-03-29 22:13:14   
                                阅读次数:
239
                             
                    
                        
                            
                            
                                一、知道二叉树的先序/后序遍历和中序遍历(中序必须要知道,不然无法判断),要快速判断后序/先序遍历,首先要了解二叉树的遍历规律二、二叉树遍历规律1、三种遍历都有一个规律,就是:逆时针沿着二叉树外缘移动,即方向相同,如下图1:图12、3、 不同的是他们出发点不同,下面说明他们的出发点和遍历顺序序列三、...
                            
                            
                                分类:
其他好文   时间:
2015-03-29 13:28:58   
                                阅读次数:
128
                             
                    
                        
                            
                            
                                题目:http://acm.hdu.edu.cn/showproblem.php?pid=1710大意:给出一个二叉树的前序和中序,求其后序遍历ps:1.在写链表时,需要写明typedef struct node{};即声明一个指向自己的数据类型,而不是直接写struct node{} 2.采用.....
                            
                            
                                分类:
其他好文   时间:
2015-03-27 21:54:23   
                                阅读次数:
150
                             
                    
                        
                            
                            
                                一、遍历二叉树
1.定义
    二叉树的遍历(travering binary tree)是指从根结点出发,按照某种次序依次访问二叉树中的所有结点,使得每个结点被访问一次且仅被访问一次。
2.前序遍历
(1)规则:若二叉树为空,则空操作返回。否则,先访问根结点,然后前序遍历左子树,再前序遍历右子树。
(2)实例
   前序遍历结果为:A
 BDGH CEIF
分析:当...
                            
                            
                                分类:
其他好文   时间:
2015-03-20 01:25:12   
                                阅读次数:
206
                             
                    
                        
                            
                            
                                递归遍历算法把要调用函数自身的部分当成是已经完成的,再去按正常的思想去思考。先根遍历算法PreOrder(t)//t为二叉树的根节点PreOrder1.[递归出口] IF t==NULL THEN RETURN。PreOrder2.[访问根] PRINT(Data(t)).Pre...
                            
                            
                                分类:
编程语言   时间:
2015-03-19 21:46:54   
                                阅读次数:
214
                             
                    
                        
                            
                            
                                二叉树的遍历一般分为三种遍历方法,即先序遍历、中序遍历和后序遍历。 在中序遍历中,一个节点的前驱,是其左子树的最右下角结点,后继,是其右子树的最左下角结点。 在后序遍历中, ? 若结点是根结点,则其后继为空; ? 若结点是双亲的右子树,或是左子树但双亲无右子树,则其后继为双亲结点;...
                            
                            
                                分类:
其他好文   时间:
2015-03-18 15:31:45   
                                阅读次数:
123