群硕软件笔试题和面试题答案目

招聘笔试题2018-11-22王华老师

  一、给了一棵二叉树的前序遍历和中序遍历,要求写出后序遍历。

  看一下数据结构就行了,很easy。提示:前序遍历的第一个节点为根结点,在中序遍历中根结点的左边节点是左子树,右边节点是右子树,如此递归。

  二、什么是物理内存和虚拟内存,OS中为什么要使用虚拟内存?

  看OS的书。

  三、解释一下C#中的“delegate”。

  原先不清楚的,然后在技术面试的时候问了一下面试官,原来类似于一个队列,队列中存的是函数指针(托管函数),运行时队列中的函数会在一个线程中被依次执行。

  四、与子程序传递参数有哪些方法?

  汇编题,我想起来三个:参数压栈、参数存寄存器、参数存数据段。

  五、解释一下Java中的String和StringBuffer,什么时候需要使用StringBuffer?

  核心是String对象是不变对象,连接、取子串等操作会生成新的对象,旧对象可能会被回收。StringBuufer则是可变对象,上述操作将在原对象上进行。

  六、Java中哪些容器的默认布局器(layout)是BorderLayout?

  这个不是那得很准,就写了JFrame及其子类,Frame及其子类。

  七、一个C 的函数:

  int operation(int numberA,int numberB){

  return numberA numberB;

  }

  然后声明了三个变量:

  int a = 2;

  int result1 = operation(5, a );

  int result2 = operation(5 a, a); 字串1

  问result1和result2的值。

  原先以为考得是传值、传引用的问题,结果仔细一看考得是a 和 a的问题,这就简单了。result1 = 7, result2 = 12

  八、假如父类的析构函数没有声明为虚函数的话在父类的指针上调用析构函数会有什么后果?

相关推荐

猜你喜欢

大家正在看

换一换