大家好,今天小编关注到一个比较有意思的话题,就是关于互联网面试经典算法技巧的问题,于是小编就整理了1个相关介绍互联网面试经典算法技巧的解答,让我们一起看看吧。
大型互联网企业是如何面试java初级工程师?面试题有哪些?
近期面试了京东金融、京东商城、蚂蚁金服、搜狗、58,面试经验大体总结如下:1. dubbo:rpc底层调用原理和过程、负载均衡规则、如何进行版本控制2. redis详细原理:哨兵机制、主从***、支持类型、如何实现一个自己的缓存3. kafka详细原理:消息可靠性设计、重复消费、消息丢失等问题、原理4. 数据库:(1)事务、锁、索引原理和各种优化、数据库事务隔离级别和各种锁如何实现ACID、mysql主从***原理(2)分库分表:非分表主键跨库查询、跨库分页、分页查询优化等5. JVM调优:调优方法、垃圾回收原理和优缺点、各种GC原理区别、如何确定哪些对象应该回收方法6. 其他分布式:(1)分布式锁: 各种实现方式,redis实现如果宕机锁没有释放各种处理方案?(2)分布式事务: 全部(3)分布式全局唯一ID:各种实现方式(4)压测过程(5)幂等性、一致性、削峰限流等实现方案10.基础问题:(1)HashMap、concurrentHashmap、treeMap、atomic...等底层原理和实现机制?hashmap遍历的方式?(2)线程池实现原理和常用参数?(3)countDownLatch使用场景和具体写法?(4)多线程相关:servlet是否线程安全?实现线程顺序执行?volatile\synchronized\reetrantLock区别和底层实现原理?countDownLatch和CyclicBarrier区别和应用场景实现方式等?如何解决OOM/CPU100%等?(5)object常用方法?原理和区别?11.算法相关(1)单例模式各种写法、优缺点(2)各种排序算法、查询算法(3)二叉树、B、B+等原理、区别(4)顺序数组快速查找和统计指定重复数字的个数?
首先说说自己,我是写j***a的,所在的并不是一个大公司,不过也有个面试大公司的经验,首先大公司不关你是去面试初级还是中高级,其实公司并不会刻意为等级分配面试题,也就是初级和中级面试内容基本一样,常规套路是先笔试,满足要求后进入面试的初试,初始一般会问到闻得到你的项目经验离职原因,和一些技术问问题,算了说了很多废话,我就告诉你要问那些技术问题吧,大公司一般都自己带产品,用户量高,所以,多线程,高并发,一定会sql优化一定会问到,例如,dubbo,zookeeper,redis,sql事务,锁机制,常用的初级框架,spring,springboot,mybaitis,各种池技术,jvm,gc机制。对了还有一个很重要的点,那就是网络传输协议。差不多就这些,当然这些回问题得前提是你是面试j***a,如果不是,当我没说
由于我经常被邀请做为一些大型互联网企业的面试官,所以我来回答一下这个问题。
一般面试初级J***a工程师都是应届毕业生或者是1至2年左右工作经验的程序员较多,这两种情况虽然面试的都是初级程序员的岗位,但是面试的要求上还是有所区别的。
应届毕业生
针对于应届毕业生来说,面试官最为关心的内容是面试者的知识结构是否健全。往往面试官在筛选的时候首要考虑的是学校,然后是专业,然后是知识的掌握情况。因为有不少科技公司在招聘应届毕业生的时候都有学校上的要求,有的要求985,有的要求211,当然也有只要求本科就可以的。
在符合基本招聘条件之后,面试官会进一步了解面试者的知识结构,往往第一个要求就是算法要求,比如给出两个算法来解决一个问题,让面试者聊一聊应该选择哪一个等等。然后会问一问对J***a语言的了解程度,做过哪些实验等等。当然,对应届生来说对J***a语言的掌握程度要求并不高,能把基本的封装、继承、多态说清楚就可以了。
有一定工作经验
对于有一定工作经验的面试者来说,面试官的问题就会具体的多。首先面试官会对你从事的领域做一个大致的了解,比如是电商领域还是金融领域等等,然后会针对这些领域的常见问题进行进一步了解。
这部分面试主要考虑的是项目经验,面试者一定要实事求是,因为技术问题的答案通常都是比较明确的,如果没有做过基本上是不会正确回答的,所以一定要把自己做的项目讲清楚,以便于面试官可以跟你进行具体的交流,否则就很容易面试失败。
对于初级程序员来说,目前很少企业会准备面试题,一方面这很难能全面了解程序员的真实水平,另一方面也降低了面试的效率。如果有面试题,也基本上以基础概念为主。
我目前在带移动互联团队和大数据团队,我会陆续在头条上写一些相关的科普文章,感[_a***_]的朋友可以关注我的头条号,相信一定会有所收获。
谢谢!
到此,以上就是小编对于互联网面试经典算法技巧的问题就介绍到这了,希望介绍关于互联网面试经典算法技巧的1点解答对大家有用。