谷歌面试经历 |电话 (SDE)
我收到了谷歌员工的推荐,然后通过简历提交给谷歌担任软件开发人员。
最初,我被告知如果我被选中,将进行 2 轮电话面试,然后是现场面试。
第1轮:
面试官很友好。
问题:基本上,问题是给你一个高度为 H 和一定宽度为 W 的手机屏幕。你必须在屏幕上放置一些文本。给出一个人可以拥有的最大字母大小,以使文本适合屏幕。
我的方法:我给出了一种蛮力方法,在这种方法中,我们从可能的最小字体到可能的最大字体运行一个循环,并在电话屏幕的一行中放置尽可能多的字母并给出最佳结果。
当被要求进一步改进我的方法时,我建议使用基于二分搜索的解决方案,在该解决方案中,我为字体取一个中间值,看看文本是否合适。如果是,那么我迭代上半部分,如果没有,那么我迭代下半部分。
最后我被问到每个解决方案的时间复杂度。
由于第一轮电话面试顺利,我直接被选中进行现场面试。