摘要:我的解法: 建树,递归判断 #include#include#include#include#includeusing namespace std;struct Node { Node() { wl=wr=dl=dr=0; l=r=0; } int wl; int dl...
阅读全文
摘要:// UVa699 The Falling Leaves // 题意:给一棵二叉树,每个节点都有一个水平位置:左儿子在它左边1个单位,右儿子在右边1个单位。从左向右输出每个水平位置的所有结点的权值之和。按照递归方式输入,-1表示空 树 // UVa699 The Falling Leaves// Rujia Liu// 题意:给一棵二叉树,每...
阅读全文
摘要:// UVa712 S-Trees// Rujia Liu// 题意:给一棵满二叉树,每一层代表一个01变量,取0时往左走,取1时往右走。给出所有叶子的值,以及一些查询(即每个变量的值),求最后到达的叶子的值// 算法:结点从上到下编号为1, 2, 3, ...则左走就是乘以2,右走是乘以2加1。第一个叶子的编号是2^n#include#includeusing namespace std;...
阅读全文
摘要:这题就是运用了二叉树重建, 以及遍历。 二叉树的遍历:先序遍历,中序遍历,后序遍历 只要有一个中序序列再加上另一个序列就可唯一地重建原来二叉树。 先序遍历就是先访问根节点,然后再先序遍历左子树,最后先序遍历右子树。先序遍历也就是深度优先搜索(DFS)。 进行了二叉树重建之后,只要对这棵二叉树进行搜索, 取得各个路径之和,然后找出最小的那个和即可。 /*题意:给出...
阅读全文
摘要:题意: 计算从根到叶节点的累加值,看看是否等于指定值。是输出yes,否则no。注意叶节点判断条件是没有左右子节点。 思路: 建树过程中计算根到叶节点的sum。 注意: cin读取失败后要调用clear恢复,否则后面无法正常读取。 注意空树都要输出no 最初代码如下:#include#include#include#include#include#include#includeusing name...
阅读全文
摘要:画图出来后结果很明显 2xyPzwIMabcABdefgCDEFsample outputwzyxIPMgfCecbDdAaEBF * + -x y z w F B E a A d D b c e C f g #include#include#include#include#include...
阅读全文