今天做了一题求二叉树节点的最大距离,顺便写了下二叉树的建立,遍历的过程。
我觉得这题的主要思想是深度遍历+动态规划,我们在深度遍历的过程中,对于某一个子树,求出左右子树叶子节点到根节点的最大距离,进而求出经过根节点的最大距离。 最后求出所有子树经过根节点的最大距离。就是这个题目的最终结果。代码如下:
//二叉树的建立,以及遍历
//16 14 8 2 -1 -1 4 -1 -1 7 1 -...
分类:
其他好文 时间:
2015-08-27 13:24:15
阅读次数:
227
#include"stdio.h"
#include"malloc.h"
#include"stdlib.h"
typedef struct lNode
{
char data;
struct lNode *lchild;
struct lNode *rchild;
}LNODE,*Tree;
typedef struct Node
{
Tree data;
struct Node * Next;
}NODE, * PNODE;
typedef struct Stack
{
...
分类:
其他好文 时间:
2015-07-02 19:30:39
阅读次数:
135
上篇咱们说到二叉树的一种建立方法及三种遍历方法的递归非递归算法。这篇换了一种新的建立方法,用先根遍历递归的思路建立二叉树,用递归的方法计算深度,用中根递归和非递归方法遍历整个二叉树。
BinaryTree.h
//二叉树的建立和遍历
#ifndef BINARYTREE_H_
#define BINARYTREE_H_
#include
typedef int T;
struct Node
...
分类:
其他好文 时间:
2015-06-10 09:04:51
阅读次数:
160
二叉树是一种重要的数据结构.
二叉树是n(n>=0)个结点的有限集合,该集合或为空集,或由一个根结点和两棵互不相交的,分别称为根结点的左子树和右子树的二叉树组成(递归定义)
满二叉树:对于这样的一棵二叉树,如果所有分支结点都存在左右子树,且所有叶子节点都在同一层上,称这样的二叉树为满二叉树。
完全二叉树:如果一棵具有n个结点的二叉树的结构与满二叉树的前n个结点完全相同,称之为完全二叉树。
...
分类:
其他好文 时间:
2015-05-10 20:33:27
阅读次数:
156
题意:给出一颗点带权的二叉树的中序和后序遍历,找一个叶子使得它到根的路径上的权和最小。学习的紫书:先将这一棵二叉树建立出来,然后搜索一次找出这样的叶子结点虽然紫书的思路很清晰= =可是理解起来好困难啊啊啊啊后来终于问懂一丢丢了---比如说样例:中序遍历:3 2 1 4 5 7 6后序遍历:3 1 2...
分类:
其他好文 时间:
2015-03-11 22:57:16
阅读次数:
276
Node* BuildTree(int m){//这是错误的二叉树建立方法//空的情况不能判断 if(m > n) return NULL; printf("请输入%d/%d号结点的值:",m,n); Node *node = (Node*)malloc(sizeof(Node))...
分类:
其他好文 时间:
2014-12-17 20:36:25
阅读次数:
134
#include #include struct BiTNode { char data; struct BiTNode* lchild; //二叉树的结构 struct BiTNode* rchild; }; typedef struct BiTNode * BiTre...
分类:
其他好文 时间:
2014-12-17 20:21:12
阅读次数:
256
题目大意:输入一颗二叉树,将它按从上到下、从左到右的顺序输出各个节点位置。
思路:先根据输入的字符串将二叉树建立起来(注:可能出现不能建立的情况),若能
成功建立,则用宽度优先搜索(BFS)的方法遍历所有节点,并在遍历的时候,把结果
存下来,然后进行输出。
注意:BFS需要用到队列。...
分类:
其他好文 时间:
2014-12-11 10:30:15
阅读次数:
205
二叉树建立算法
#include
#include
typedef struct BiTNode
{
int val;
struct BiTNode *lchild,*rchild;
}BiTNode;
void create1(BiTNode **r)//用两个星,这样才可以修改指针
{
int val;
scanf("%d ",&val);
if(val=...
分类:
其他好文 时间:
2014-11-25 23:35:36
阅读次数:
171
堆排序基本思路:根据完全二叉树,建立最大最小堆来排序时间复杂度:O(nlongn)/** * */package com;/** * @author wenb * @time 下午03:52:55 * @date 2014-10-24 */public class HeapSort { pu...
分类:
编程语言 时间:
2014-10-24 18:29:10
阅读次数:
221