概述
这两天投了一波简历,昨天陪女友去听的宣讲会,之后答了笔试题,今天面试,给了口头offer。
--记2018春招第一面
笔试题:
1.一个数组里全是正整数,将这个数组中的数字排序后,从前向后输出的正整数值最大。
比如A[] = {12,34},即3421比1234大,输出3421.
要点:数组排序,比较整体即3412与1234去比,大的3412大,则34排在12前面。
最好用字符串操作,因为整合后可能爆int。
2.一组硬币,面值为coins={1,2,5,10,20,50},各种硬币数量无限,则组成N元钱最少的硬币数是多少?
简单的DP,dp[i]=min( dp[i] , dp[i-coins[j]]+1 ) (前提是coins[j]要存在),其中dp[i]表示组成i元最少的硬币数量。
初值dp[coins[j]]=1
3.写LRU算法,主要写put(key,value)和get(key)两个函数
双链表+HashMap O(1)
一面:
问了rocksdb中的跳表结构
rocksdb的高可用(答不上来,瞎答,分布式宕机,其他机器怎么提供正常服务)
两个事务,都是update,让把死锁看出来(没看出来),看出来之后,如何防止死锁(锁排序序列化,加入到队列中串行)
LRU的缺点(LFU的优点),它不能记录次数多的,单纯地针对时间来设计,可以优化一下,先进LFU,再进LRU。
Spring的Ioc(要答出1.创建和2.装载)、AOP(1.弥补OOP 2.做的事如日志等 3.原理,动态代理)
GC的方法(复制、标记-整理、标记-清除)
程序内存爆了,怎么查是哪的问题(这个我答的是用内存监控的软件检测,快照锁定,之后结合代码查看,感觉还有别的主流方法我不知道)
一面过后,就直接发了口头offer(个人感觉笔试占了重要部分,面试答得不太好,会的都不考。。。备考的我,心塞塞~~)。
最后
以上就是活泼航空为你收集整理的2018春招便利蜂--你的准备永远不能覆盖面试官的提问的全部内容,希望文章能够帮你解决2018春招便利蜂--你的准备永远不能覆盖面试官的提问所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复