📜  SAP Labs 实习面试经历| 2019 年 8 月(校内)

📅  最后修改于: 2021-11-16 08:00:59             🧑  作者: Mango

* 免责声明:这里描述的所有问题都不是专门问我的。我试图将我记得被问到我们任何人的所有问题存档。 *

第 1 轮:在线编码轮

在hackerrank上进行的测试有1部分基于OOPS概念和SQL、调试和输出的MCQ问题。

关于能力问题的另一部分也很容易。
这些是得分部分。

然后有 1 个 C 问题要编码。给出了一个 Polygon 类,它有一个构造函数,将两个输入作为参数 – 高度和宽度。为两个子类 Rectangle 和 Triangle 编写代码并计算其面积并使用另一个给定类 Output 打印它。

然后是两个编码问题的部分。我有 1 个 SQL 查询和 1 个字符串比较问题。

一些学生得到了 2 个 sql 查询,另一些学生得到了要编码的图形着色问题。

SQL 查询对我来说太高级了。大多数学生无法解决。
字符串比较问题很简单,我用蛮力解决了它,并且所有测试用例都通过了。

该测试具有分段截止值。

17名学生被选中进行面试。

面试当天:

他们只向被选中参加更多轮次的学生展示了他们的 Pre-Placement Talk。

每一轮都从“告诉我关于你自己”的问题开始。
所以在你的脑海中准备一个正确的答案是很重要的

每一轮都以“你有什么问题想问我吗?”结束。
您可以询问反馈:
实习生的角色、公司层级、高级初级关系、工作文化等。
但始终提出问题非常重要。

技术第 1 轮和第 2 轮

每个面试官都有一些固定的问题(至少在我看来是这样。)

他们在第 1 轮中的主要关注点是 OOPS 和其他基本概念,例如-
抽象、数据隐藏、多态(运行时和编译时与示例)、虚函数、
封装、友元函数、函数重载 vs函数覆盖、运算符重载等。

用例子修改每个概念

然后还有一些其他的问题,比如——

1. 关键字“extern”

2. 为什么 C 比 C++ 好?

(因为与 C++ 相比,C 是一种低级语言,因此它更接近机器。这使它更快、更高效。这也是它被更广泛和商业使用的原因。ex-IRCTC)。

3. 当编译器遇到“cout<<”时会发生什么,如果我们对“<<”进行运算符重载会怎样。

4. 编写一个递归程序,在不使用任何额外变量的情况下反转字符串。

public class Program {
    public static void main(String[] args)
    {
        String s = "daaaaam !";
        System.out.println(rev(s));
    }
    public static String rev(String s)
    {
        int n = s.length();
        if (n <= 1) {
            return s;
        }
        s = rev(s.substring(1, n)) + s.charAt(0);
        return s;
    }
}

5. 编写程序消除字符串的所有重复字符。

(您可以使用哈希图或 26 大小的字符数组来执行此操作。)

6. 编写一个程序来生成一个简单的模式

1
12
123
1234
123
12
1

public class Program {
    public static void main(String[] args)
    {
        pattern(4);
    }
    public static void pattern(int n)
    {
        // upper half
        for (int i = 1; i <= n; i++) {
            for (int j = 1; j <= i; j++) {
                System.out.print(j);
            }
            System.out.println();
        }
        // lower half
        for (int i = n - 1; i > 0; i--) {
            for (int j = 1; j <= i; j++) {
                System.out.print(j);
            }
            System.out.println();
        }
    }
}

有些人也被要求为 Dijekstra 编写代码。

然后因为我用Java编码,他们问我Java细节。

Java开发人员了解HashMap 是如何实现的细节非常重要每次面试都被问到这个问题

1.黑白ArrayList和LinkedList的区别。对于更多的插入和删除,哪个更好?

2.异常处理-示例和层次结构

3.你能覆盖hash map的hashcode函数吗?

4. Java的垃圾收集器是什么?使用垃圾收集器而不是显式销毁内容是否是一个好习惯。

还有一些 SQL 问题。查看SQL的TOP等基本插入、更新、删除操作

查看不同类型的表连接很重要。

回合总是以拼图结束。
这些谜题通常很容易,不太难。

1. 你有y瓶,其中一瓶中毒了。你得到 1 只老鼠。老鼠在吃了毒药x 小时后死亡。鉴定毒瓶最少需要多长时间?

( ans 是 y+x 小时。
每小时用不同的瓶子喂老鼠i。老鼠死亡的 hr 将是第x+i小时。 )

2. 给你一个 3ltr 和一个 5ltr 的容器。你怎么能测量4ltrs?

( 1. 装满 5 升容器
2. 5-3=2所以装满3L的容器,直到它开始溢出,现在5L的容器里有2L的水。
3. 现在清空 3L 容器并将 2L 放入其中。
4. 3L的容器现在有1L的空间
5. 5-1=4所以把5L的容器装满,剩下的1L装在3L的容器里。还有中提琴!你有 4L。)

3. 给你两个容器,50 个红球和 50 个蓝球。以某种方式分配这些,以便选择红球的概率更大/最大。

(将一个红球放入一个容器中,将所有其他球放入第二个容器中
P(红球)= 1/2( 1+49/50 )=99/100
大于
P(蓝球) = 1/2( 0+1 ) =50/100 )

第三轮:人力资源轮

本轮选拔11名学生

在所有这些过程中,主要关注点是您参与过的项目。他们不在乎项目的数量。他们想要一些独特的不同类型的项目。

我只有一个项目,但它与通常的项目不同。

  1. 说说你自己
  2. 为什么选择 SAP
  3. 你如何描述你之前的几轮比赛
  4. 弱点
  5. 任何您不得不反对当局并且您认为原因是合理的情况。
  6. 说说你做过的项目。

这些实际上是最初的问题,但是当轮到我的时候已经是晚上 9 点 15 分了,所以他们只是直接问了我关于我自己和我的项目的情况。

最后他们选出了 6-7 名学生。