去哪儿网 校招面试

时间:2022-06-28 04:17:55 面试 我要投稿
  • 相关推荐

去哪儿网 校招面试

去哪儿网 校招面试

2013应届毕业生“去哪儿网”校招面试题

1.删除一个ArrayList中的所有元素,要求现场手写代码。

答:

方法一:删除前用一个变量flag纪录list的长度,然后for循环删除flag次第一个元素。关键代码如下:

int flag = list.size();

for(inti = 0; i < flag ; i++){

list.remove(0);

}

因每次删除都会导致size的重新变化,所以删除前需纪录。

方法二:将list压入迭代器,循环删除迭代器即可。关键代码如下:

Iteratoritr = null;//假设list的泛型也为String

itr = list.iterator();

while(itr.hasNext()){

itr.next();

itr.remove();

}

压入迭代器后,利用迭代器的方法进行删除。建设读者自行尝试一下,以体会其中道理。

2.Java中的垃圾回收机制。

答:Java提供的GC(垃圾收集)功能可以自动检测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法。GC采用有向图的方式记录和管理堆内存中的所有对象,当对象“不可达”时,GC自动回收该内存。

3.创建一个对象有几种方法

答:

a.用new语句创建对象,这是最常用的创建对象的方式。

b.运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例方法。即Java的反射机制。

c.调用对象的clone()方法。

d.运用反序列化手段,调用java.io.ObjectInputStream对象的readObject()方法

4.数据结构中的狸猫换太子。即一个单向链表(节点数大于等于4),不知道头结点,只有一个指针指向第三个结点,要求删除指向的第三个结点。

答:由于不知道头结点,无法找到第二个结点的尾指针。所以根本无法真正删除第三个结点,解决方法是将第四个结点的值赋给第三个结点,然后删除第四个结点即可,正所谓狸猫换太子。(建议拿笔画画,便一目了然)


【去哪儿网 校招面试】相关文章:

去哪儿网面试地址07-01

广州天河财富广场去哪儿网面试不靠谱07-13

腾讯和去哪儿网的offer选择07-10

怎样做好校招面试?07-13

银行校招面试穿什么07-02

阿里校招前端电话面试06-29

去哪儿网最看重面试者的哪一部分?07-13

校礼仪队招新面试问题06-28

校招面试:女生需要打扮成怎样?07-13

银行校招面试自我介绍技巧07-02