一、单选题
1、栈是先进后出的数据结构,给定一个大小为3的初始状态为空的栈,已知一组数据经过这个栈后,最终的数据顺序依次为:1 3 2 4 问原始进栈的数据不可能是以下的哪组?
A 2 3 1 4
B 3 1 2 4
C 4 2 3 1
D 1 4 3 2
答案:C,注意栈大小为3
2、下面这个c++程序运行时,描述正确的是
int a=1;
const char* str=”abc”;
class Obj {};
int f(int lhs, intrhs){
Obj* obj = new Obj();
Obj obj2;
int aa = a;
delete obj;
return aa+lhs+rhs;
}
int main(){
int* b=new int(2);
int c=f(a,*b);
delete b;
}
A. 保存在堆中的数据有:*b,obj2;保存在栈中的数据有:c, lhs, rhs, *obj, aa
B. 保存在堆中的数据有:*b, *obj, *str;保存在栈中的数据有:c, lhs, rhs, aa
C. 保存在堆中的数据有:*b, *obj;保存在栈中的数据有:c, lhs, rhs, obj2, aa
D. 保存在堆中的数据有:*b, *obj; 保存在栈中的数据有:str, c, lhs, rhs, obj2, aa
3、操作系统中可以使用LRU(Least Recently Used)内存淘汰旧数据的策略,如果内存需要加载新数据但空间不足,则会按照最近访问时间进行排序,并将最老的数据淘汰。假设现在内存空间大小为5,原本内存中没有数据,对内存中数据的访问顺序如下:
1, 2, 5, 3, 4, 6,1, 4, 3, 6, 7, 8, 3, 9
问访问过程中发生缺页的次数是多少次?
A. 缺页次数:4
B. 缺页次数:10
C. 缺页次数:5
D. 缺页次数:9
答案:B