NOIP2013提高组初赛总结(题目+易错点+解析)
错了5个选择
还OK,稳得住
单选:
5. 已知一棵二叉树有 2013 个节点,则其中至多有( )个节点有 2 个子节点。
A. 1006 B. 1007 C. 1023 D. 1024
正确答案:A
解析:先来一个基准图,一个根节点,两个叶节点,有一个节点有 2 个子节点
然后之后每次加两个就会多一个,也就是1+(2031-3)/2=1006
7. 斐波那契数列的定义如下:F 1 = 1, F 2 = 1, F n = F n – 1 + F n – 2 (n ≥ 3)。如果用下面的函数计
算斐波那契数列的第 n 项,则其时间复杂度为( )。
int F(int n)
{
if (n <= 2)
return 1;
else
return F(n - 1) + F(n - 2);
}
A. O(1) B. O(n) C. O(n 2 ) D. O(F n )
正确答案:D
解析:单纯的看很难看出时间复杂度,但是我们可以想到时间复杂度的递推式,是O(n)=O(n-1)+O(n-2)
然后回到斐波那契数列的递推式,fn=fn-1+fn-2
怎么样,是不是很熟悉(出自dan神)
8. 二叉查找树具有如下性质:每个节点的值都大于其左子树上所有节点的值、小于其右子
树上所有节点的值。那么,二叉查找树的( )是一个有序序列。
A. 先序遍历 B. 中序遍历 C. 后序遍历 D. 宽度优先遍历
正确答案:B
解析:又是考场脑抽类型,题目中给出了二叉搜索树的定义
只需要知道中序遍历的定义
中序遍历是先找到最靠左的叶节点,然后在找到它的父亲,然后找到它父亲的右儿子,已经很明显了吧
15. T(n)表示某个算法输入规模为 n 时的运算次数。如果 T(1)为常数,且有递归式 T(n) =
2*T(n / 2) + 2n,那么 T(n) = ( )。
A. Θ(n) B. Θ(n log n) C. Θ(n 2 ) D. Θ(n 2 log n)
正确答案:B
解析:认真就能做对
其实很简单,我们来看递归式,n/2,明显的联想到了log,但是在过程中,我们每次回累加2n,近似为n,所以再把每次的n都近似为当前的n,结果就是O(nlogn+logn),在近似为O(nlogn)
4. ( )属于 NP 类问题。
A. 存在一个 P 类问题
B. 任何一个 P 类问题
C. 任何一个不属于 P 类的问题
D. 任何一个在(输入规模的)指数时间内能够解决的问题
正确答案:AB
解析:又是NP和P
看我博客吧:https://www.cnblogs.com/WWHHTT/p/9762864.html