基础很重要!基础很重要!!基础很重要!!!
作为从接触到现在只有一年半的Java清汤自学挂,今天终于经历了算得上是人生技术第一面,感触颇多,特此记录一二。
应聘岗位:JAVA后台开发
面试流程:笔试1小时+一面+二面+HR面
(很不幸直接在一面摔了个大跟头!!)
笔试:
个人感觉:理解题很重要啊巴扎黑!!!
笔试5题,1思路4手写编程,题如下:
1,数组A由1000W个随机正整数(int)值组成,设计算法,给定整数n,在A中找出符合如下等式n=Ai+Aj的所有的下标i和j。说明算法思路以及时间复杂度时多少?
2,写代码,求二叉树两个节点的最低公共祖先节点,编程语言不限。
这道题是剑指offer上第七章面试案例二的原题来着….当初刷题的时候想着先刷后面的再看面试的,结果…..
而且在理解题意的时候也理解错了,以为是给两个节点,去找第一个公共祖先节点来着….然后就悲剧了….
3,一个袋子里面有n个球,每个球上面都有一个号码(拥有相同号码的球是无区别的)。如果一个袋子是幸运的,当且仅当所有球的号码的和大于所有号码的积。
如{1,1,2,3}因为1+1+2+3>1*1*2*3的,所以该袋子是幸运的。
你可要适当从袋子中移出m个球(0<= m < n),使得移出后的袋子是幸运的。现在让你编程计算一下你可以得到多少种不同的幸运的袋子,编程语言不限。
4,Web系统中,需要按照地域维度对用户进行分析,一般会通过用户请求里的IP地址来识别用户所在的城市,假设我们维护了一套IP->城市的关系库,其格式如下,,同一个IP只会唯一映射到同一个城市,请设计一个算法实现用户的地域识别:
IP段======