感觉c++很陌生啊 题目很简单,给你一棵二叉树的后序和中序序列,求出它的前序序列(So
easy!)。 输入
输入有多组数据(少于100组),以文件结尾结束。每组数据仅一行,包括两个字符串,中间用空格隔开,分别表示二叉树的后序和中序序列(字符串长度小于26,输入数据保证合法)。
输出 每组输出数据单...
分类:
其他好文 时间:
2014-05-08 22:14:52
阅读次数:
321
前一篇写了二叉树的先序遍历,本篇记录一下二叉树的中序遍历,主要是非递归形式的中序遍历。由于距离上篇有好几天了,所以这里把二叉树的创建和存储结构也重复的写了一遍。二叉树如下二叉树的存储方式依然是二叉链表方式,其结构如下typedef
struct _tagBinTree{ unsigned ch...
分类:
其他好文 时间:
2014-05-07 10:17:50
阅读次数:
335
这个代码其实自己花了很长的时间去理解,渐渐的有所明白了一点。#include #include
typedef enum { Link , Thread } PointTag; //Link表示指针,Thread表示线索typedef struct
treenode ...
分类:
其他好文 时间:
2014-05-07 09:07:36
阅读次数:
262
验证二叉树是否是查找树,可以通过查看它的中序遍历是否是升序的。下面是AC代码: 1 /** 2 *
Given a binary tree, determine if it is a valid binary search tree (BST). 3 *
solution : 4...
分类:
其他好文 时间:
2014-05-07 09:01:45
阅读次数:
250
数据结构实验之二叉树的建立与遍历
题目描述
已知一个按先序序列输入的字符序列,如abc,,de,g,,f,,,(其中逗号表示空节点)。请建立二叉树并按中序和后序方式遍历二叉树,最后求出叶子节点个数和二叉树深度。
输入
输入一个长度小于50个字符的字符串。
输出
输出共有4行:
第1行输出中序遍历序列;
第2行输出后序遍历序列;
第3行输出叶子节点个数;...
分类:
其他好文 时间:
2014-05-07 08:14:44
阅读次数:
357
时间限制:1 秒 内存限制:32 兆
题目描述:
输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并输出它的后序遍历序列。
输入:
输入可能包含多个测试样例,对于每个测试案例,
输入的第一行为一个整数n(1<=n<=1000):代表二叉树的节点...
分类:
其他好文 时间:
2014-05-07 06:00:58
阅读次数:
443
这道题要求空间复杂度为O(1),则只能采用Morris
Traversal进行中序遍历!!这个了解了之后,难点在于如何定位到两个被交换了的节点?我就被困在这里几个小时!!!(允许我为自己的愚蠢表示下悲伤吧!!!)参考了discuss中前辈的算法,才发现很简单!!!我们只需要这样来看问题,BST的中序...
分类:
其他好文 时间:
2014-05-06 12:55:19
阅读次数:
301
// BTree.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include"stdlib.h"
#include"malloc.h"
#define BT BTreeNode
#define MS 10
typedef struct BT{
char data;
struct BT *left;
struct BT *right;
}BT;
...
分类:
其他好文 时间:
2014-05-04 12:45:34
阅读次数:
365
在派生类中序列化一个基类
假如有一个基类如下:
class student_info
{
public:
student_info() {}
virtual ~student_info() {}
student_info(const std::string& sn, const std::string& snm, const std::string& sg)
: name_(sn),...
分类:
其他好文 时间:
2014-05-03 21:41:12
阅读次数:
356
这种题一般有二种形式,共同点是都已知中序序列。如果没有中序序列,是无法唯一确定一棵树的。
已知二叉树的前序序列和中序序列,求解树。
1、确定树的根节点。树根是当前树中所有元素在前序遍历中最先出现的元素。
2、求解树的子树。找出根节点在中序遍历中的位置,根左边的所有元素就是左子树,根右边的所有元素就是右子树。若根节点左边或右边为空,则该方向子树为空;若根节点
边和右边都为空,...
分类:
其他好文 时间:
2014-05-03 16:58:36
阅读次数:
325