1 #include 2 #define QUEUEELEMENTTYPE int 3 using namespace std; 4 5 /*结点*/ 6 typedef struct Node 7 { 8 QUEUEELEMENTTYPE data; /*数据域*/ ...
分类:
编程语言 时间:
2015-04-01 17:09:24
阅读次数:
202
题目要求:
A Binary Search Tree (BST) is recursively defined as a binary tree which has the following properties:
The left subtree of a node contains only nodes with keys less than the node's key....
分类:
其他好文 时间:
2015-03-31 14:46:43
阅读次数:
168
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, level by level).
For example:
Given binary tree {3,9,20,#,#,15,7},
3
/ 9 20
...
分类:
其他好文 时间:
2015-03-31 14:46:03
阅读次数:
146
思路:
具体的思路和层序遍历一致,只是需要将偶数层的结点值颠倒一下即可,时间略长,可见本方法并非好的方法。思路详见层序遍历:http://blog.csdn.net/mnmlist/article/details/44490975...
分类:
其他好文 时间:
2015-03-20 16:28:25
阅读次数:
131
一般的层序遍历直接打印出结果,用队列即可,但是此次的要求尼是按层次打印结果,所以考虑到用两个队列来交替存储,遍历上一层次的同时将下一层的结点存储到另一个队列中,并在将上面一层的遍历完成后交换两个队列的值。...
分类:
其他好文 时间:
2015-03-20 14:28:08
阅读次数:
140
一般的层序遍历直接打印出结果,用队列即可,但是此次的要求尼是按层次打印结果,所以考虑到用两个队列来交替存储,遍历上一层次的同时将下一层的结点存储到另一个队列中,并在将上面一层的遍历完成后交换两个队列的值。最后,将结果列表调换下顺序即可。...
分类:
其他好文 时间:
2015-03-20 14:25:18
阅读次数:
131
输入为:abd##eh###cfi##j##g##
1、普通层序遍历:输出为一行
2、进阶版1:输出每一层,从左向右依次输出
3、进阶版2:S型输出每一层,即从右向左和从左向右交替输出
#include
#include
using namespace std;
template
struct BiNode
{
T data;
BiNod...
分类:
其他好文 时间:
2015-03-18 20:35:53
阅读次数:
158
算法思路:
1、后序最后元素为根,根将中序分为左右子树
2、层序遍历利用队列实现,java使用LinkedList
import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;
class Node{
int key;
Node left;
Node right;
public Node...
分类:
其他好文 时间:
2015-03-09 11:04:05
阅读次数:
120
#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
队列 和 栈 是 一种 受限制的 线性表。所以 他们的 实现方式 都 相差 无几。之前有过 链栈 和 链式线性表 的 实现经验,自然 写 链队 ,也毫无问题。
下面详细讲解每一段代码 的技术要点
下面是队列节点的数据结构
struct QueueNode
{
ElementType data;
QueueNode * next;
};
//生成一个节点
QueueNode * ...
分类:
其他好文 时间:
2015-03-06 12:50:50
阅读次数:
177