📌  相关文章
📜  谷歌软件工程师面试,海得拉巴

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

谷歌软件工程师面试,海得拉巴

简历筛选器:我收到了一封来自招聘人员的电子邮件,他询问了我的详细信息,例如工作经验、兴趣、技术能力。几天后,她安排了一个电话会议,询问了一些关于复杂性、某些排序算法的最坏情况和最佳情况的基本问题,以及一些简短而棘手的数学问题。您需要正确回答 8/10 才能入围。

之后,我有大约 20 天的时间进行第一轮电话面试。

电话采访:这是一个 45 分钟的视频群聊,共享了一个 Google 文档。她直接跳到了这个问题上。
Q1。给定两个长度相等的字符串A 和 B,找出是否有可能在公共点切割这两个字符串,使得 A 的第一部分和 B 的第二部分形成回文。

扩展 1。如果字符串可以在任何一点(不仅仅是一个公共点)被切断,你会如何改变你的解决方案?
扩展 2。字符串中的多个切割(形成回文的子字符串)?使用两个字符串中的子字符串形成回文。它的时间复杂度是多少?
Q2。为执行这些操作的计算器函数提出一些边缘测试用例:(+,-,*,/)
在这一轮结束 25 天后,我被要求进行现场面试。

第 1 轮:给定一个布尔值的输入流,设计一个可以在最佳时间支持以下模块的数据结构——
i) 设置真(索引)
ii) setFalse(索引)
iii) setAllTrue()
iv) setAllFalse()
v) 获取索引(索引)

第 2 轮:给定球员姓名和得分列表 - {Carl, 70;亚历克斯,55 岁; Isla, 40},设计了一种可以在最佳时间支持以下模块的数据结构-
i) updateEntry(字符串名称)
ii) getEntryFromRank(int rank)

第三轮:
Q1。
给定一个包含 n 个整数的数组,找到长度为 k 的字典序上最小的子序列。
Q2。给定一个人(用小字母表示)和自行车(用大写字母表示)矩阵,找到给定人最近的自行车。
如果您必须为一群人寻找自行车,您将如何改变您的解决方案? (假设多辆自行车与 1 人的距离相同)

第四轮:
Q1。
给定一个无限的棋盘,找到最小的没有。骑士从原点到达 (x, y) 的步骤。
扩展在骑士无法到达的地方引入了禁止坐标列表。在你的代码中处理这个。确保处理无限循环,因为板是无限的。