Skye-ye's Blog

LeetCode654 - 最大二叉树

题设 问题描述 给定一个不含重复元素的整数数组,一个以此数组构建的最大二叉树定义如下: ① 二叉树的根是数组中的最大元素。 ② 左子树是通过数组中最大值左边部分构造出的最大二叉树。 ③ 右子树是通过数组中最大值右边部分构造出的最大二叉树。 要求通过给定的数组构建最大二叉树,并且用括号表示法输出构建好的最大二叉树,假设给定的数组的大小在[1,1000]之间。 输入形式 在一行中...

HDU1710 - 由先序和中序遍历生成后序遍历

题设 问题描述 由二叉树的先序序列和中序序列构造二叉树并求其后序序列 输入形式 每个测试用例的第一行包含一个整数n(1<=n<=1000)表示二叉树的节点个数,所有节点的编号为1~n,后面两行分别给出先序序列和中序序列。可以假设构造出的二叉树是唯一的。 输出形式 对于每个测试用例,输出一行表示其后序序列。 样例输入 9 1 2 4 7 3 5 8 9 6 4 7 2 1 ...

判断完全二叉树

题设 问题描述 假设二叉树中的每个结点值为单个整数,采用二叉链结构存储,设计算法判断给定的二叉树是否是完全二叉树。假定每棵二叉树节点不超过2000个。 输入形式 每个测试是一颗二叉树的括号表示法字符串 输出形式 如果是完全二叉树,输出“1”;如果不是完全二叉树,输出“0” 样例输入 1(2(4,5),3) 样例输出 1 题解 先建树,这里依然是用的l数组和r数组。...

动态规划

背包问题 01背包问题 有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。 第 i 件物品的体积是 vi,价值是 wi。 求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。 输出最大价值。 输入格式 第一行两个整数,N,V,用空格隔开,分别表示物品数量和背包容积。 接下来有 N 行,每行两个整数 vi,wi,用空格隔开,分别表示第 i 件物品...