📌  相关文章
📜  软件工程师的 PharmEasy 面试经验 1 – 校园 2020

📅  最后修改于: 2022-05-13 01:58:12             🧑  作者: Mango

软件工程师的 PharmEasy 面试经验 1 – 校园 2020

笔试:这一轮由 6 个 GATE 级别的简单 MCQ(排序 + 时间复杂度 + DSA)[4/6 分] 和 1 个编码问题组成,每组的编码问题都不同 [20 分]

我的问题似乎不正确:

  • 给定:一个城市的 2 名医生 [A 和 B] 和 N 种药物。当轮到医生时,他要么选择 1 种药物,要么选择 n 种药物 [greedy]。考虑 A 的回合总是先出现。给一个N,告诉谁吃药,按'A'或'B'打印

令人困惑,对吧?我很困惑并尝试了一些自定义测试用例来获得想法

尝试将 n 设为 0-20 - 观察到 n = 3 -> 每次返回 'B' 否则每次 'A'

这么写

if(n == 3) return ‘B’ else return ‘A’;

所有的测试用例都被清除了。被选为书面(只有 8 名学生入围 - 可能是其他集的棘手问题)

第二轮(个人面试): 8人入围。从简短的介绍开始,他在 1 月份才加入该组织,仅 8 个月。这家伙非常友好。

他让我介绍一下,然后转到我的简历上。他从3个项目中选择了一个,深入研究,还尝试修改一些案例,问你如何处理。我个人在那个项目上花了很多时间,这部分很顺利。

他从 DSA 开始: 2 个问题(简单)

  1. 给定一个字符串(仅由小写字母组成),如果所有字符都是唯一的,则返回 true,否则返回 false。我告诉他一个基于 HashSet 的方法,他很高兴,因为字符有限,我们也可以使用 arr[26] 来实现。需要代码,他让我运行一些测试用例,代码运行良好。
  2. 给定一个二叉树,返回一个镜像二叉树。只是需要这种方法,我告诉他需要交换左右孩子,他对这种方法没有意见。

由于这一切都在30分钟内结束,他又尝试了一些问题,问我是否知道rabbitMQ和其他人,我告诉他我只有一点想法,并且我告诉他我想问一些问题,以他很乐意告诉他。

我问了他一些问题,我对此表示怀疑,那就是这一轮。

第三轮(招聘经理轮):本轮入围5人

  1. 自我介绍
  2. 什么是缓存——解释得很好
  3. DBMS Ques – ACID 属性

我告诉过我对 DBMS 不是很熟悉,但是 ACID 我可以尝试解释一下

A: Availability - later, she pointed out and I told Atomicity
C: Consistency - explained
I: Isolation - Explained
D: Durability - wasn’t able to re-collect

继续编码:给定一个整数数组——返回三元组。三元组:如果 a1 + a2 = a3,则 a1、a2、a3 是三元组

可能有重复,我说如果没有重复就会很容易。她说,我们先解决那个案子。

我给出了一种蛮力方法——O(N^3),她要求对其进行优化。我给了 O(n^2) 时间 + O(n) 空间方法——使用 HashSet

她说,你能减少空间吗?我尝试并提出了 2 指针方法 - O(n^2) 时间 + O(1) 空间

她让我写代码,我照做了。后来她让我处理重复

我尝试了很多方法,但对于某些测试用例它们都失败了。

后来经过 2-3 种不同的方法,我能够找到解决方案,即保持计数并删除重复项

后来,她问我有什么问题。我向她询问了公司对 COVID-19 情况的政策。

本轮共耗时1小时10分钟

没有入围决赛 - HR