一房地产数据服务初创公司的面经
北美一有关房地产开发和服务的初创公司面经。
因为新冠疫情的原因,很多面试都已经放到网络上了。在北美进行面试之前,还是建议所有打算从事 IT 的童鞋对基础概念都要熟悉一点点。
如果你是学习 Java 或者面向对象的话,通常使用的一些框架,云平台(主要是 AWS)都需要有一些了解才好。
针对 Java 来说,有关面向对象的概念,包括有什么是依赖注入,什么是反转,什么是组件,继承关系,接口,实现等等,都需要有一些基本的了解。
在面试的时候大部分情况都会问到上面的概念。
在搞清楚上面的概念后,就会有一些实际的算法了,其实这些实际的算法算不上难。正常人突击下基本上都可以掌握,唯一比较麻烦点的地方就是使用各种在线平台手动直接写。
其实这也能够看出来面试公司是否人性化的
hashtable 是如何实现的
这个题目还是有点意思的。
很多人都知道 HashTable, 都知道 HashTable 或者 HashMap 是用来存储 K-V 的。但是至于 HashTable 是如何实现的,可能有很多人不知道。或者就算知道可能也不是非常容易的表述清楚。
这个题目的目的就是要求你设计一个 HashTable。在这个题目中,需要搞清楚几个知识点,K 是怎么存储的,V 又是怎么存储的,其中有一个非常重要的概念就是 K 的哈希(Hash)。
有关什么是 Hash 和 Java 中的哈希函数,请参考文章 Java hashCode() 方法 中的内容。
准确的来说进行 Hash 就是对对象进行或者数据进行散列。当你拿到散列的整形数据后,你将会考虑如何将这一个整形数据存储到一个数组中,这个就是你需要的 Hash 表。通常的算法可能就是去模了。
当然假设你有 10 个数据,但是数组正好也是 10 个,那么最好的算法就是每一个数据存储在一个空间中。
当然实际情况可能就不是这样的了,假设你有 11 个数据,但是存储空间直邮 10 个,那么就肯定有 2 个数据存储在同一个位置。这个时候你就可以使用链表来将存储在同一个空间的数据链下去。
如上图显示的就是一个典型的 HashTable 的结构。
对一般的面试来说,掌握这么多的内容基本上能够考察你对基本数据结构的了解,以及对 HashTable 的了解。
如果还需要了解更多的,有关 HashTable 的负载因子,扩容等等的研究的话,其实已经超出了面试本身的范畴了。
正常人如果不是认真复习过,或者没事刷一下的话一般比较难答出来。
相信很多人都是使用 HashTable 或者 HashMap,其实很少去了解里面具体的算法和结构,说心里话也真心没有太大必要去了解。
在这个时候如果面试官揪着这堆东西不放,或者非要你说明白里面的很多配置。那基本上可以说明给你面试的人有病或者是有点孔乙己的意思了。
当然,还是建议在面试的时候复习下 HashTable 和 Hashmap 的关系,如果你真想啃一下的话,不妨去看看源代码。
100 以内素数编程,在线写
题目要求非常简单,就是将 100 以内的素数打印出来就可以了。
这个题目的难度并不大。但是如果你没有遇到过或者没有刷过这个题目的话,可能就会被搞懵逼了。
这个题目有几个关键点,首先 1 是一个特殊的素数,因此你的循环需要从 2 开始。这个很多时候和我们使用的循环从 0 开始有不同。
这个题目能够快速解答的关键就是需要使用定义的函数来做,尽量不要在循环里面嵌套循环,因为这样你会很难跳出这个循环,并且循环的起止判断不好判断。
了解了这 2 个点以后就可以比较容易的解决这个问题了。
有关素数的算法中间和代码,请参考:Prime numbers from 1 to 100 (打印 100 以内的素数) 中的内容。
面试总结
这次面试时今年开始打算换工作以来的第一次面试,因此本身就是当成练手的性质了。
很多工作过比较长时间的人都会知道,在找工作之前,需要进行突击的算法,数据结构,基础概念的巩固。因为在实际工作中,这些东西没有人会用到,也没有人会无聊到去刷这些东西。
但是找工作的时候确不得不进行了解了。
总结这次面试来说就是准备不充分,基本上没有刷题就上去写了,而且有一段时间没有在记事本上写代码了,因此基本上是被他们搞懵逼了。
一上来就弄 HashTable 的算法,这个其实还是有点难度的,如果没有认真复习过一些常用的数据结构的话,肯定是做不出来的。
因为不是非常理想的状态来进行面试的,那么这个结果就可想而知了。
当然这 2 个题目用于巩固下基础还是非常不错的。
相关文章
- 国内各大互联网公司相关技术博客3.0版 (集合腾讯、阿里、百度、搜狐、新浪、网易、360等共29个)
- 这家公司用”众包”来做更好的安全
- 北美一工作搜索引擎公司技术岗面经
- 今天同学跟我说刚入门前端,想到我目前实习的公司涨涨经验
- “云”为什么最先被搜索公司提出?
- 游戏公司用IM软件 “颜值”和“手感”一个都不能少
- 红帽收购API管理公司3Scale
- 中国网安携卫士通公司亮相2015年度密码盛会 自主密码彰显国之重器
- 极客日报:新东方成立编程公司;某大厂挂“加班真好”标语;Chrome 96稳定版发布
- 极客日报第 22 期:新荣耀员工现金补偿最高可拿 N+5;酷派员工积极提交补丁获 Linus 关注,获公司10万股期权奖励
- 云南省与曙光公司签署战略合作协议,全面实施“云上云”计划
- SAP投资食品数字化、大数据公司Vivanda
- 只需五步加快公司"新陈代谢"
- 思杰公司将于本月放出容器化NetScaler
- MySQL:互联网公司常用分库分表方案汇总
- PLC远程网关BL102助力水务公司快速向智慧水务转型
- 站点公司亚马逊砸了10亿也没能做成智能手机,技术是须要沉淀和积累的
- 云计算更适合小公司的八条原因
- 苹果收购法国图像识别公司 技术或植入iPhone