
树
文章平均质量分 54
Demoo.
来记录不会的题啦
展开
-
CF706D Vasiliy‘s Multiset
思路:异或的话存二进制字典树,对插入操作就是平常的操作,因为还有一个删除和询问所以我们需要用个num数组记录一下一个数的二进制每个位的数的个数,删除的时候遍历一下num--,因为有询问操作所以我们要用一个数组v来记录一下到一个编号的数是多少。题意:刚开始a集合里有一个数0,那么我们有q个操作:1.+x,将x加到集合a中,2.-x,将x从集合中减掉,3.?x,输出集合a中的数与x的最大异或值。原创 2022-09-24 16:54:33 · 203 阅读 · 0 评论 -
p1030求先序遍历
题目描述 给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度\le 8≤8)。 输入格式 22行,均为大写字母组成的字符串,表示一棵二叉树的中序与后序排列。 输出格式 11行,表示一棵二叉树的先序。 输入输出样例 输入 #1复制 BADC BDCA 输出 #1复制 ABCD 中序遍历:左根右 后序遍历:左右根 先序遍历:根左右 因为后序遍历的每次遍历都是根结点,所以我们先把后序遍历的根结点输出,然后在中序遍历中找到根结点所在的位置原创 2022-05-12 10:59:40 · 247 阅读 · 0 评论 -
二叉树详解
二叉树:他的子节点的个数小于等于2 创建一个二叉树: struct tree{ int val;//根节点的值 tree l;//左子树 tree r;//右子树 }; 二叉树的先序,中序,后序遍历: 先序遍历:先头节点再左节点再右节点 中序遍历:左头右 后序遍历:左右头 比如下图中的一个树: 我们按先序遍历的话就是:1 2 4 5 3 6 7 按中序遍历的话就是:4 2 5 1 6 3 7 按后序遍历的话就是:4 5 2 6 7 3 1 代码实现是: 先序: .原创 2022-04-19 21:49:41 · 902 阅读 · 0 评论