原题链接:http://ac.jobdu.com/problem.php?pid=1113 题目描述: 如上所示,由正整数1,2,3……组成了一颗特殊二叉树.我们已知这个二叉树的最后一个结点是n.现在的问题是,结点m所在的子树中一共包括多少个结点. 比如,n = 12,m = 3那么上图中的结点13,14,15以及后面的结点都是不存在的,结点m所在子树中包括的结点有3,6,7,12,因此结点m的所在子树中共有4个结点. 输入: 输入数据包括多行,每行给出一组测试数据,包括两个整数m,n (1 <…
题目地址:http://ac.jobdu.com/problem.php?pid=1113 题目描述: 如上所示,由正整数1,2,3……组成了一颗特殊二叉树.我们已知这个二叉树的最后一个结点是n.现在的问题是,结点m所在的子树中一共包括多少个结点. 比如,n = 12,m = 3那么上图中的结点13,14,15以及后面的结点都是不存在的,结点m所在子树中包括的结点有3,6,7,12,因此结点m的所在子树中共有4个结点. 输入: 输入数据包括多行,每行给出一组测试数据,包括两个整数m,n (1 <…
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:5079 解决:1499 题目描述: 如上所示,由正整数1,2,3--组成了一颗特殊二叉树.我们已知这个二叉树的最后一个结点是n.现在的问题是,结点m所在的子树中一共包括多少个结点.     比如,n = 12,m = 3那么上图中的结点13,14,15以及后面的结点都是不存在的,结点m所在子树中包括的结点有3,6,7,12,因此结点m的所在子树中共有4个结点. 输入: 输入数据包括多行,每行给出一组测试数据,包括两个整数m,n (1 <…
题目地址:http://ac.jobdu.com/problem.php?pid=1541 题目描述: 旋转是二叉树的基本操作,我们可以对任意一个存在父亲节点的子节点进行旋转,包括如下几种形式(设被旋转节点为x,其父亲节点为p): 1.左旋 旋转前,x是p的右儿子. x的左儿子(若存在)变为p的右儿子,p变为x的左儿子.如下图 2.右旋 旋转前,x是p的左儿子. x的右儿子(若存在)变为p的左儿子,p变为x的右儿子.如下图 综上,我们可以通过检查选择前x是p的左儿子还是右儿子来判断该次旋转是左旋…
原题链接:http://ac.jobdu.com/problem.php?pid=1078 题目描述: 二叉树的前序.中序.后序遍历的定义:前序遍历:对任一子树,先访问跟,然后遍历其左子树,最后遍历其右子树:中序遍历:对任一子树,先遍历其左子树,然后访问根,最后遍历其右子树:后序遍历:对任一子树,先遍历其左子树,然后遍历其右子树,最后访问根.给定一棵二叉树的前序遍历和中序遍历,求其后序遍历(提示:给定前序遍历与中序遍历能够唯一确定后序遍历). 输入: 两个字符串,其长度n均小于等于26.第一行为…
题目地址:http://ac.jobdu.com/problem.php?pid=1078 题目描述: 二叉树的前序.中序.后序遍历的定义: 前序遍历:对任一子树,先访问跟,然后遍历其左子树,最后遍历其右子树: 中序遍历:对任一子树,先遍历其左子树,然后访问根,最后遍历其右子树: 后序遍历:对任一子树,先遍历其左子树,然后遍历其右子树,最后访问根. 给定一棵二叉树的前序遍历和中序遍历,求其后序遍历(提示:给定前序遍历与中序遍历能够唯一确定后序遍历). 输入: 两个字符串,其长度n均小于等于26.…
原题链接:http://ac.jobdu.com/problem.php?pid=1184 简单的二叉树重建,遍历. 如下: #include<cstdio> #include<cstdlib> #include<cstring> #include<vector> struct node{ char key; node *ch[]; node(] = ch[] = NULL; } }*root = NULL; ; ; ]; void built(node *…
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:9861 解决:4013 题目描述: 输入10个数,要求输出其中的最大值. 输入: 测试数据有多组,每组10个数. 输出: 对于每组输入,请输出其最大值(有回车). 样例输入: 10 22 23 152 65 79 85 96 32 1 样例输出: max=152 来源: 2009年哈尔滨工业大学计算机研究生机试真题 思路: 求数组最大值,很简单啦. 代码: #include <stdio.h> int main(void) { int…
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:2080 解决:1084 题目描述: 班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄,保留到小数点后两位. 输入: 第一行有一个整数n(1<= n <= 100),表示学生的人数.其后n行每行有1个整数,取值为15到25. 输出: 可能有多组测试数据,对于每组数据, 输出一行,该行包含一个浮点数,为要求的平均年龄,保留到小数点后两位. 样例输入: 2 18 17 样例输出: 17.50 提示: 要输出浮点数.双精…
原题链接:http://ac.jobdu.com/problem.php?pid=1521 水题,如下.. #include<algorithm> #include<iostream> #include<cstdlib> #include<cstring> #include<cstdio> #include<vector> using std::cin; using std::swap; using std::vector; ; st…