一.选择题
1.在一个具有 n 个顶点的无向图中 , 要连通全部顶点至少需要()条边。
n
n+1
n-1
n/2
2.数组元素的下标值越大,存取时间越长,这样的说法正确吗?
正确
不正确
分析:直接访问
3.168.192.33.124/26 subnet mask IP address block can be written as( )
255.255.255.192
255.255.255.224
255.255.255.240
255.255.255.248
分析:168.192.33.124/26
26个网络位255.255.255.11000000=255.255.255.192
4.系统结构图是精确表达程序结构的图形表示法。因此,有时也可以将系统结构图当作系统流程图使用。( )
正确
错误
分析:系统流程图:反应主体框架 系统结构图:反映的是系统中模块的调用关系和层次关系,谁调用谁,有一个先后次序(时序)关系
5.关系数据库的任何检索操作都是由三种基本组合而成的,这三种基本运算不包括( )。
正确答案: B 你的答案: B (正确)
连接
比较
选择
投影
6.在数据库系统中,视图可以提供数据的?
并发性
完整性
安全性
可恢复性
将整数数组( 7-6-3-5-4-1-2 )按照堆排序的方式进行升序排列,请问在第一轮排序结束之后,数组的顺序是()
1-2-3-4-5-6-7
2-6-3-5-4-1-7
6-5-3-2-4-1-7
5-4-3-2-1-6-7
8下面关于虚拟局域网VLAN的叙述错误的是()
VLAN是由一些局域网网段构成的与物理位置无关的逻辑组。
利用以太网交换机可以很方便地实现VLAN。
每一个VLAN的工作站可处在不同的局域网中。
虚拟局域网是一种新型局域网。
9.有这样一个类:
class Eye
{
public:
void Look(void);
};
现在希望定义一个Head类,也想实现Look的功能,应该使用()方法,实现代码重用。
继承
组合
模板
过滤
“优先使用对象组合,而不是继承”是面向对象设计的第二原则。
组合也叫“对象持有”,就是在类中定义另一类型的成员,继承会破坏类的独立性,增加系统的复杂性,一般系统的继承层次不超过3层。组合拥有良好的扩展性,支持动态组合,因此请优先考虑组合方法。
10已知一个二叉树的后序遍历的结果为 AEFDHZMG, 那么它的中序遍历可能为()前序遍历可能为()
正确答案: B D 你的答案: B D (正确)
ADEFHMGZ
ADEFGHMZ
GDAEFMHZ
GDAFEMHZ
二.编程题
import java.util.Scanner;
public class Main{
public int jump(int[] a){
int sum=0;//统计步数
int i=0;//这个是初始位置
while(i<a.length){
if(a[i]!=0&&i==a.length-1){//最后一步不为0时
sum++;
break;
}
int maxLen=0,p=0;
for(int j=i+1;j<=a[i]+i;j++){//用来寻找一段中的最大值
int l=j-i+a[j];//计算当前可移动最大距离
if(l>=maxLen){
maxLen=l;
p=j;
}
}
if(a[i]==0||p==0){
return -1;
}
i=p;//如果桩上的数字不为0则更新i
sum++;
//直接跨月上岸
if(p+a[p]>a.length-1){
sum++;
break;
}
}
return sum;
}
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
int N=sc.nextInt();
int[] arr=new int[N];
for(int i=0;i<N;i++){
arr[i]=sc.nextInt();
}
System.out.println(new Main().jump(arr));
}
}