#include#includeusing namespace std;const int MAX=1010;int n;int arr[MAX]; //存放原始数组int arrI=0;int CBT[MAX]; //二叉排序树层序遍历序列【思维】中序遍历在数组中存放的就是层序...
分类:
其他好文 时间:
2015-03-08 18:40:53
阅读次数:
132
当年老师给我们讲这里的时候,讲的真是云里雾里的。
。其实画个图就很容易理解的事情,为什么扯那么远
我觉得 DFS其实就是树的先序遍历的强化版本
BFS是层序遍历的强化
只不过 图的实现方式比较多元化 而且不像二叉树有明确的根
操作起来相对难一些
理论其实很好理解 就是具体操作起来 每次都很晕的样子
眼高手低了又。
图的遍历是指从图中的任一顶点出发,对图中的所有顶点访...
分类:
其他好文 时间:
2015-02-22 11:06:58
阅读次数:
269
Given a binary tree, return thezigzag level ordertraversal of its nodes' values. (ie, from left to right, then right to left for the next level and al...
分类:
其他好文 时间:
2015-02-21 15:26:40
阅读次数:
185
如果直接利用二叉树的层序是没有办法构建一个二叉树的,但是如果是完全二叉树应该是可以的
这里层序序列中用-1表示当前节点没有值
构建主要采用了非递归的方法,利用了queue,因为层序的遍历可以通过queue来实现那么自然也可以通过这个方法进行构建
#include
#include
#include
using namespace std;
typedef struct T...
分类:
其他好文 时间:
2015-02-04 16:38:19
阅读次数:
166
【先序遍历】【中序遍历】中序遍历非递归遍历算法:遇到一个结点,就把它压栈,并去遍历它的左子树;当左子树遍历结束后,从栈顶弹出这个结点并访问它;然后按其右指针再去中序遍历该结点的右子树;【后续遍历】【层序遍历】
分类:
其他好文 时间:
2015-02-03 12:30:14
阅读次数:
173
我们可以很容易的使用队列来实现二叉树的层序遍历,代码如下: 1 #include 2 #include 3 #define MAX 10 4 5 6 //二叉树存储结构定义 7 typedef char Item; 8 typedef struct node *link; 9 struct...
分类:
其他好文 时间:
2015-02-01 23:00:50
阅读次数:
178
C语言非递归实现二叉树的先序、中序、后序、层序遍历代码如下: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 //*****二叉树的二叉链表存储表示*****// ...
分类:
编程语言 时间:
2015-01-18 20:56:12
阅读次数:
332
说起二叉树的遍历方式,这里可以分为两类 一、深度(也就是从上往下)
先序遍历
中序编列
后序遍历
二、广度(也就是从左往右)
层序遍历
下面是深度的三种遍历方式:
#include
using namespace std;
typedef struct BitNode{
char data;
struct BitNode *lchild, *rchild;
}Bi...
分类:
其他好文 时间:
2014-12-09 17:42:11
阅读次数:
191
package tree.binarytree;
import java.util.LinkedList;
/**
* 层序遍历二叉树
*
* @author wl
*
*/
public class PrintFromTopToBotton {
public static void printfromtoptobotton(BiTreeNode root) {
if (r...
分类:
编程语言 时间:
2014-12-06 08:56:54
阅读次数:
258