汇丰校园安置
第一轮:屏幕测试
第 1 部分(90 个问题和 75 分钟)
第 1 部分包含三个部分
- 能力:非常基本和简单的问题。由 30 个问题组成。
- 语言能力:由 30 个问题组成。其中一个是理解段落。
- 技术:由中等水平的问题组成。包含有关Java、C++、Android、JavaScript、HTML、操作系统(Thrashing)、树遍历(按顺序、预购、后购)的问题
第一和第二部分非常容易,而技术部分很耗时。相应地分配时间。我设法在 30 分钟内完成了前两个部分。每个部分都有单独的截断。你不能只在前两节取得好成绩,而在第三节不被淘汰就成功了。
第 2 部分(2 个问题和 30 分钟)
第 2 部分中的一段编码
C++、Java8、Perl 和Python允许编码。
- 第一个问题非常简单。 5分钟内解决。要求打印从 1 到 n 的数字之和,使所有数字都能被 k 整除。
- 第二个问题是中等到困难的水平。它是
给定一个维度为 m*n 的矩阵,其中矩阵中的每个单元格的值可以是 0、1 或 2,其含义如下:
0: Empty cell
1: Cells have fresh oranges
2: Cells have rotten oranges
所以我们必须确定让所有的橙子都腐烂所需的最短时间。一个在索引 [i, j] 处腐烂的橙子可以在索引 [i-1, j], [i+1, j], [i, j-1], [i, j+1] 处腐烂其他新鲜橙子(向上, 下, 左, 右)。如果不可能腐烂每个橙子,那么只需返回 -1。
如果你设法做任何问题,我想你会通过切断。
在 160 多名学生中,有 42 人通过了技术面试。
第二轮:技术面试
作为一名电子专业的学生,我没有太多的 CS 简历。很紧张,因为我被三个人中最难的面试官面试了。首先,我被要求介绍自己(他非常仔细地听了所有内容)。然后我被要求讲述我对Java的回应。我被问了四个问题。当我开始回答问题时,问题的级别增加了。
- 遗产
A类{一些代码;}
B 类扩展 A{
B a = 新 A();
}
把它写在纸上给我看。什么都没问。我回答自己这是错误的,因为 B 是 A 的一个实例,但反之则不然。他让我写下正确的陈述。
答案:B a = new B();或 A a = 新 B();
- 多重继承和多重接口
A 类扩展 B、C{}
A 类实现 b, c{}
又给我看了。
答:第一个语句是错误的,因为Java不支持多重继承,但是第二个语句是正确的,因为它支持多重接口。然后问了我一些关于Java接口的问题。
- 动态列表
public void test(){
List l = new ArrayList();
l.add("summer");
l.add("spring");
test(l);
System.out.print(l);
}
public static test(List p){
p.add("autumn");
p.add("winters");
p = null;
}
回答:我不确定,虽然我回答说它会打印所有内容(“夏天”、“春天”、“秋天”、“冬天”),因为 P 仅指空值,但打印了 l。
- 方法重载
public static void test(byte b){}
public static void test(short s){}
public static void test(int i){}
test(5)
问:这些说法正确吗?
答:是的,它描述了Java中的重载。
问题:重载的规则是什么?
答:方法名一样,参数个数不一样,或者参数个数一样,数据类型不一样。
问题(主要):将执行哪个方法?
答:包含参数(int i)的那个,因为int(在Java中)的系统优先级大于short。和短大于字节。
他给我留下了深刻的印象,并通过了我的人力资源轮次。
17名学生入围。
第三轮:人力资源轮
基本问题。
- 我喜欢什么
- 我的朋友会如何形容我
- 生活中面临的挑战
- 我在团队项目中的角色。
HR 基本上会看到你的自信和口才。
我们中有 11 人获得了前锋的角色。 :')