📜  Facebook 面试问题

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

Facebook 面试问题

根据 Facebook 的官方页面,以下是编码期望。

以下是来自同一 Facebook 官方页面的提示

编码面试提示:

  • 大声思考:我们非常关注您解决问题的方式,这与获得正确答案同样重要。大声思考可以让面试官深入了解你的思考过程,也可以帮助他们跟随你的解决方案。此外,它允许他们在需要时给出提示。
  • 找一个好的面试地点:选择一个安静的地方,确保你有良好的互联网连接和强大的电话信号。耳机将帮助您腾出双手进行编码。
  • 说清楚:确保你说的清楚,同样,如果你听不清面试官的声音,让他们知道,这样他们就可以适应了!你不想浪费整个面试试图了解对方。
  • 使用您最擅长的编程语言:正确及时地编写解决方案很重要,因此请使用您最熟悉的语言。
  • 有效地管理你的时间:花一些时间找出问题的理想解决方案。不要太快地强制使用想到的第一个解决方案。如果您无法在合理的时间内找到更好的解决方案,请开始编写一个可行的解决方案,然后进行迭代和改进。有些面试没有任何编码就结束了,因为受访者找不到理想的解决方案。最好有非最优但有效的代码,而不仅仅是一个想法。一旦你有了一个可行的解决方案,你就可以尝试提高它的效率、代码设计或它的任何其他方面。
  • 分享你的推理:确保你可以谈论你的解决方案;您可能会被要求解释它们。工程就是权衡取舍,所以要准备好讨论它们。
  • 自己查找并修复错误:不要等待面试官为您找到它们。
  • 使用给你的提示:通常,面试官对问题非常了解,知道如果你遇到困难,接下来哪些提示会帮助你。

重要资源:

  1. 最近的 Facebook 面试经历
  2. Facebook 练习题。
  3. 如何准备 Facebook 黑客杯?

以下是 Facebook 采访中提出的一些问题。

简单级别

  • 将介于 1 到 3999 之间的十进制数转换为罗马数字
  • 找到所有零和的三元组
  • 所有元素都是斐波那契数的最大子集
  • 使用字符串中两个数字之间的“+”或“*”符号计算最大值
  • 将三元表达式转换为二叉树
  • 将罗马数字转换为 1 到 3999 之间的小数
  • 计算差异等于 k 的所有不同对
  • 解码递归编码为计数后跟子字符串的字符串
  • 查找字符串是否为 K-Palindrome |设置 2
  • 查找二叉树的最小深度
  • 找到给定总和的子数组 |第 1 组(非负数)
  • 给定两个未排序的数组,找到总和为 x 的所有对
  • 贪心算法 |第 1 组(活动选择问题)
  • 看和说序列
  • 总和大于给定值的最小子数组
  • 添加两个二进制字符串的程序
  • 按排序顺序重新排列字符串,后跟整数和

中等水平

  • 困惑 |第 2 组(使用特里)
  • 计算给定数字序列的可能解码次数
  • 原地旋转方阵 90 度 |设置 1
  • 直方图中的最大矩形区域 |设置 2
  • 具有至少 k 个数字的最大和子数组
  • 乘以表示为字符串的大数

硬级别

  • 整数流中的中位数(运行整数)
  • 在 k 个排序数组中找到第 m 个最小值
  • 通配符匹配