互联网(IT)大厂面试技巧(面经)

目录

前言

面试的正确姿势

实战

最后的总结


前言

虽然资历尚浅,但是也面过不少试,有Google、微软等外企大佬,也有BAT等国内巨头,工作的这几年也有幸当过几次面试官,小鹿这里呢就结合自己的亲身经历,聊一聊我对面试的一些小想法(*^▽^*)
我们面试是在面什么?

  • technology

  • thinking

  • communication

这是小鹿自己总(意)结(淫)地面试的主要考核内容。首先呢,毋庸置疑,我们面试肯定是要检验候选人是否有过硬的专业技术算法、项目经历,不同的公司、不同的职位有不同的侧重,但是具体的专业技术的考核肯定是逃不开的。
可是除此之外呢?除了显式的技术考核以外,还有很多往往被我们忽略的隐形考核。小鹿觉得主要是思维方式交流能力这两点。并且这部分反而更需要我们广大的程序员小哥哥们多多注意。不要让交流的问题,妨碍面试官发现你的思维之光,阻碍你展示出自己超强的专业素养呢(ノ≧∀≦)ノ!

面试实际上是工作的一个简单模拟。

一场面试,面试官其实只需要得到一个问题的答案,那就是和你一起工作是否开心。关于这个问题,有的外企会直接作为面试记录。虽然我们国内的企业不会这么直接,但是小鹿觉得这确实是面试中最直击灵魂的拷问。


面试的正确姿势

面试实际上是通过提出问题、回答问题,在你来我往中进行交流,模拟实际工作的情形。那么当面试官抛出话碴,提出一个问题之后,我们应该怎么更好的完成我们之间的对话呢?

小鹿以为,不管是具体的算法还是项目问题,面试官向你抛出的问题往往是开放的,没有灰常灰常清晰的定义、十分确定的唯一解的。针对这种情况,小鹿觉得切忌!!

不要直接给一个确切的回答,即使你的回答大概率是面试官心中想要的答案。

首先,我们可以尝试着去复述(当然不是一字不变的重复),用自己理解的语言去确认是否清楚的理解了面试官的问题。其次,这个问题可能存在一些没有定义清楚的模糊地带,一定要逐个向面试官去确认。当问题已经比较清晰的情况下,我们可以提出一个解决方案,这个方案可以是非常naive但是只要确实可行就ok啦。

大胆说出自己觉得可行的方案,即使这个方法看起来很简(智)单(障)。能解决问题的方法就是好方法( ̄▽ ̄)/

当然啦,实际中我们需要精益求精寻求更优的解决方案。但是大家不用太有压力,我们可以和面试官一起,沟通交流,碰撞思维的火花,共同讨论出一个较优的方案。最后实现(写code),测试,over~~

所以,小鹿划重点啦,面试的正确姿(步)势(骤)应该是这个样子滴~~

  • step 1: 正确的理解问题并复述

  • step 2: 清晰问题

  • step 3: 提出一个可行的解决方案(不一定是最优的)

  • step 4: 讨论出一个较优方案

  • step 5: 执行实现

  • step 6: 测试

实战

读到这里是不是觉得小鹿就是一个纯理论派(差点意思🙄️),那么我们就以小鹿最近的一次面试来实操一下吧!

Q1: 寻找三角数组的最大值

满足先单调递增再单调下降的array为三角数组,如[1,2,3,2,1].

  • step 1: 复述 (内心OS...这道题怎么这么简单,我有没有正确理解题意呢-O-)

  • step 2: 数组为空怎么办呐(╯﹏╰)b?

  • step 3: 可行方案**「遍历**,时间复杂度为O(n),空间复杂度为O(1)

  • step 4: 更优方案「二分查找,时间复杂度为O(logn),空间复杂度为O(1)

  • step 5: coding

  • step 6: test

Q2: 判断一个数组是否是三角数组

  • step 1: 复述(小鹿此处就省略啦)

  • step2: 数组为空?长度小于等于2的特殊情况?💡试官明确边界,只有长度大于等于3的数组才可能是三角数组💡

  • step 3: 可行方案**「**遍历」****遍历数组,如果数组只有一个拐点Xi-1<Xi且Xi > Xi+1,则为三角数组。时间复杂度为O(n),空间复杂度为O(1)。

  • step 4: 更优方案?请勇敢的说出没有更优方案,没有比O(n)更高效的算法啦 (▼へ▼メ)

**Q3:**当数组非常大,无法直接放入内存时,如何判断其是否是三角数组?

考核大家思维能力的关键时刻到啦!

首先我们可以提出一个大致的解决思路。小鹿有一个不成熟的小想法,可以用map reduce,把数组进行切分,逐个处理每一小部分数组,再整合判断整个数组是否是三角数组。

这个时候呢,我们的解决方案并不完整,比如如何分割数组,map和reduce到底怎么定义还不清晰。但是呢没有关系,我们先抛出自己idea,然后根据面试官的反馈,确定我们的方向是否正确(ง •_•)ง

当我们得到面试官的肯定后,就需要进一步细化这个solution啦。
三角数组有且仅有一个拐点。直接切分数组(比如n等分),「**map」****分别数每个切分数组的拐点数,「**reduce」****对所有拐点数求和,如果拐点数为1则为三角数组。

             

但是??如果切分的位置正好遇到拐点怎么办呢?

       

不要害羞,说出自己的思考过程,善良的面试官会给你发(提)糖(示)。

💡我们可以有重叠的切分,这样就能保证万无一失啦( ̄▽ ̄)/💡请看图,把数组划分为红、黄、蓝三个部分,其中重叠部分变成了橙色和绿色。这样就能保证即使把数组切分,也不损失整个数组的信息。        

最后的总结

当我们面试大厂的时候,保持平常心,把面试当成和同学、同事的交流,是非常重要的。在自身实力一定的情况下,不同的面试方式可能产生不同的面试结果。大家不妨也回顾总结一下自己的面试心得,有好的面试技巧可以在评论区留言,和大家一起交流学习哦~~~

希望大家面无不胜,逢考必过( ̄︶ ̄)↗

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/480696.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

「优知学院」淘宝技术架构的前世今生(上)

“ 淘宝技术架构经历从最初的LAMP架构&#xff0c;到IOE架构&#xff0c;再到分布式架构&#xff0c;再到去IOE&#xff0c;最后到现在的云计算平台架构这一变化过程在不断解决上面的技术问题&#xff0c;可以说淘宝技术架构的演变就是活生生的一本架构教科书。 这次为大家带…

十大双跨平台整体发展情况盘点

在2019年国家级双跨平台发布一年之际和新一轮遴选开场之前&#xff0c;相关媒体“从战略演进、平台发展、资源汇聚及行业应用四个维度九个细分指标”&#xff0c;对十大双跨平台整体发展情况通过“一张图”的形式做了一次盘点&#xff08;图略&#xff09;。 我们通过对图中指…

机器学习中的范数规则化之(一)L0、L1与L2范数

机器学习中的范数规则化之&#xff08;一&#xff09;L0、L1与L2范数 zouxy09qq.com http://blog.csdn.net/zouxy09今天我们聊聊机器学习中出现的非常频繁的问题&#xff1a;过拟合与规则化。我们先简单的来理解下常用的L0、L1、L2和核范数规则化。最后聊下规则化项参数的选择问…

模型训练慢和显存不够怎么办?GPU加速混合精度训练

目录 混合精度训练 理论原理 三大深度学习框架的打开方式 Pytorch Tensorflow PaddlePaddle 混合精度训练 一切还要从2018年ICLR的一篇论文说起。。。 《MIXED PRECISION TRAINING》 这篇论文是百度&Nvidia研究院一起发表的&#xff0c;结合N卡底层计算优化&#x…

陈睿:架构设计之数据库拆分六大原则

架构设计之数据库拆分原则 数据拆分前其实是要首先做准备工作的&#xff0c;然后才是开始数据拆分&#xff0c;我先讲拆分前需要做的事情&#xff1a; 第一步&#xff1a;采用分布式缓存redis、memcached等降低对数据库的读操作。 第二步&#xff1a;如果缓存使用过后&#xf…

模式识别之特征提取算法

说明&#xff1a;此处暂时简单介绍下各种特征提取算法&#xff0c;后续完善。 前言&#xff1a;模式识别中进行匹配识别或者分类器分类识别时&#xff0c;判断的依据就是图像特征。用提取的特征表示整幅图像内容&#xff0c;根据特征匹配或者分类图像目标。常见的特征提取算法…

ACL2020 | 对话数据集Mutual:论对话逻辑,BERT还差的很远

一只小狐狸带你解锁 炼丹术&NLP 秘籍本文为MuTual论文作者的特别约稿编辑&#xff1a;rumor酱、夕小瑶前言自然语言处理是人工智能领域的掌上明珠&#xff0c;而人机对话则是自然语言处理领域的最终极一环。以BERT为代表的预训练模型为自然语言处理领域带来了新的春天&…

大型网站系统的特点和架构设计

分布式架构 阿里P8架构师谈&#xff1a;淘宝技术架构从1.0到4.0的架构变迁 优知学院」淘宝技术架构的前世今生&#xff08;上&#xff09; 优知学院」淘宝架构的前世今生&#xff08;下&#xff09; 揭秘&#xff1a;一位亲历者眼中的淘宝技术架构发展之路 淘宝发展历程最具…

IDC 和浪潮联合发布了《2020-2021 中国人工智能计算力发展评估报告 》

近日&#xff0c;IDC 和浪潮联合发布了《2020-2021 中国人工智能计算力发展评估报告 》&#xff08;以下简称《报告》&#xff09;。《报告》指出&#xff0c;中国 AI 基础设施市场规模在 2020 年达到了 39.3 亿美元&#xff0c;到 2024 年预计达到 172. 2 亿美元。 《报告中》…

Linux系统中Oracle数据库使用SELECT语句检索数据(1)实例应用

Linux系统中Oracle数据库使用SELECT语句检索数据(1)实例应用 1&#xff0c;首先切换到Oracle用户&#xff0c;并进入数据库#sql / as sysdba2&#xff0c;启动数据库&#xff0c;并连接样例及表格&#xff0c;启动命令#startup&#xff0c;连接样例#conn scott/tiger3&#xff…

知乎搜索框背后的Query理解和语义召回技术

一只小狐狸带你解锁 炼丹术&NLP 秘籍前言随着用户规模和产品的发展&#xff0c; 知乎搜索面临着越来越大的 query 长尾化挑战&#xff0c;query 理解是提升搜索召回质量的关键。本次分享将介绍知乎搜索在 query term weighting&#xff0c;同义词扩展&#xff0c;query 改写…

阿里P8架构师谈:分布式架构设计12精讲

分布式架构设计包含&#xff1a; 分布式缓存 分布式消息中间件 分库分表、读写分离 单点登录等 想成为阿里160万年薪的P8架构师&#xff1f;你必须掌握如下6大技能体系&#xff01; 阿里P8架构师谈&#xff1a;分布式架构系统拆分原则、需求、微服务拆分步骤 阿里P8架构师谈…

【干货】推荐系统中的机器学习算法与评估实战

【导读】推荐系统是机器学习技术在企业中最成功和最广泛的应用之一。本文作者结合MLMU演讲【1】的Slides&#xff0c;对推荐系统的算法、评估和冷启动解决方案做了详细的介绍。 作者 | Pavel Kordk 编译 | 专知 翻译 | XiaowenMachine Learning for Recommender systems — P…

Google | 突破瓶颈,打造更强大的Transformer

一只小狐狸带你解锁炼丹术&NLP秘籍作者&#xff1a;苏剑林 (来自追一科技&#xff0c;人称“苏神”)前言《Attention is All You Need》一文发布后&#xff0c;基于Multi-Head Attention的Transformer模型开始流行起来&#xff0c;而去年发布的BERT模型更是将Transformer模…

阿里P8架构师谈:高并发网站的监控系统选型、比较、核心监控指标

在高并发分布式环境下&#xff0c;对于访问量大的业务、接口等&#xff0c;需要及时的监控网站的健康程度&#xff0c;防止网站出现访问缓慢&#xff0c;甚至在特殊情况出现应用服务器雪崩等场景&#xff0c;在高并发场景下网站无法正常访问的情况&#xff0c;这些就会涉及到分…

斯坦福CS224n追剧计划【大结局】:NLP和深度学习的未来

一只小狐狸带你解锁炼丹术&NLP秘籍简介Stanford CS224n追剧计划是由夕小瑶的卖萌屋发起的开源开放NLP入门项目&#xff0c;借助github和微信群为大家提供同期小伙伴打卡讨论、内容沉淀、作业笔记和FAQ共享、连线斯坦福等服务。关于该计划的详请见这里 。1. Github项目地址h…

KubeVela 高可扩展的云原生应用平台与核心引擎

https://www.oschina.net/news/121015/kubevela-open-source 目录什么是 KubeVela &#xff1f;KubeVela 解决了什么问题&#xff1f;1. 应用开发者眼中的 KubeVela一个 Appfile 示例2. 平台工程师眼中的 KubeVela3. KubeVela vs 经典 PaaS快速入门安装KubeVela1. 安装Kubernet…

打造工业级推荐系统(三):推荐系统的工程实现与架构优化

打造工业级推荐系统&#xff08;三&#xff09;&#xff1a;推荐系统的工程实现与架构优化 gongyouliu 阅读数&#xff1a;4148 2019 年 4 月 26 日导读&#xff1a;个性化推荐系统&#xff0c;简单来说就是根据每个人的偏好推荐他喜欢的物品。互联网发展到现在&#xff0c;推荐…

阿里P8架构师谈:什么是缓存雪崩?服务器雪崩的场景与解决方案

什么是应用服务雪崩 雪崩问题 分布式系统都存在这样一个问题&#xff0c;由于网络的不稳定性&#xff0c;决定了任何一个服务的可用性都不是 100% 的。当网络不稳定的时候&#xff0c;作为服务的提供者&#xff0c;自身可能会被拖死&#xff0c;导致服务调用者阻塞&#xff0c…

论文浅尝 | 基于RNN与相似矩阵CNN的知识库问答

链接:https://arxiv.org/pdf/1804.03317.pdf概述当前大部分的 kbqa 方法为将 kb facts 与 question 映射到同一个向量空间上,然后计算相似性. 但是这样的做法会忽视掉两者间原本存在的单词级别的联系与交互. 所以本文提出一种网络结构 ARSMCNN,既利用到语义的信息, 又利用到单词…