大致题意就是给出一个二叉树的先序、中序遍历序列,要求输出二叉树后序遍历的第一个元素。 1 #include<iostream> 2 using namespace std; 3 4 const int maxn = 50010; 5 int n,pre[maxn],in[maxn],flag = 1 ...
分类:
其他好文 时间:
2020-03-15 13:35:31
阅读次数:
60
二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改,序列化的结果是一个字符串,序列化时通过 某种符号表示空节点(#),以 ! 表示一个结点值的结束(value!)。二 ...
分类:
其他好文 时间:
2020-03-10 01:33:13
阅读次数:
115
题目链接:序列化二叉树 题意: 请实现两个函数,分别用来序列化和反序列化二叉树 二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改,序列化的结果是一个字符串,序列化时 ...
分类:
其他好文 时间:
2020-03-06 23:54:28
阅读次数:
126
剑指offer 61.序列化二叉树 题目 请实现两个函数,分别用来序列化和反序列化二叉树 二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改,序列化的结果是一个字符串 ...
分类:
其他好文 时间:
2020-03-06 15:21:59
阅读次数:
64
一、题目说明 题目114. Flatten Binary Tree to Linked List,将一个二叉树“原地”压缩为“链表”形态的二叉树。难度为Medium! 二、我的解答 这个题目如果允许使用栈的话Easy,先序遍历二叉树,右子树入栈,左子树入栈。当栈不空的时候,将栈顶元素放到右子树即可。 ...
分类:
其他好文 时间:
2020-03-06 10:51:48
阅读次数:
74
JAVA递归实现线索化二叉树 基础理论 首先,二叉树递归遍历分为先序遍历、中序遍历和后序遍历。 先序遍历为:根节点+左子树+右子树 中序遍历为:左子树+根节点+右子树 后序遍历为:左子树+右子树+根节点 (只要记住根节点在哪里就是什么遍历,且都是先左再右) 线索化 现在有这么一棵二叉树,它的数据结构 ...
分类:
编程语言 时间:
2020-03-05 00:57:55
阅读次数:
88
题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 先序遍历是按照 中——左——右 的方式对二叉树进行遍 ...
分类:
其他好文 时间:
2020-03-04 13:00:43
阅读次数:
80
这是一道二叉树遍历模板题。 大致题意就是给出 用栈模拟二叉树的中序遍历过程,推断出push的全部元素是先序序列,pop的全部元素是中序序列,最后 根据 先序+中序 = 二叉树,输出二叉树的后序序列。 注意点:如果使用 getline(cin,str),必须要考虑 元素值大于 10的情况,不然 最后一 ...
分类:
其他好文 时间:
2020-03-02 10:30:47
阅读次数:
52
1. 题目 2. 思路 1. 定义结构体, 并且使用下标作为序号 2. 读取数据,并且排序children,方便输出 3. 使用先序遍历,处理数据 3. 注意点 权重的值很大,用字符串处理,要自己写加法和比较函数 4. 代码 ...
分类:
其他好文 时间:
2020-03-01 20:01:12
阅读次数:
51
内心OS:我靠啊!!!我就是偷了一下懒!!!把先序遍历的代码COPY了两份,改成了中序和后序遍历。万万没想到啊!我忘了修改函数中递归函数的名字!!!找这个BUG花了我三个小时~~我哭啊~~,我还以为我的知识体系坍塌了呢?!!~ 总结,这是一道模板题,要先记住大体流程,然后反复练习。 输入格式: 第一 ...
分类:
其他好文 时间:
2020-02-29 00:29:44
阅读次数:
57