前言
这是我最近一次的Android面试过程,电话面试,问的Java的东西多,难倒不难,感觉没有发挥好,开始很紧张。(幸好拿到了京东的offer)电话录音了,顺便把问了的问题一个个都列出了,并给出答案。
因为从面试的角度来讲,目前 BAT 和 TMD 等一线互联网企业或多或少都会有几个算法题,而对应届毕业生来说,算法的要求度则更高!这里可以分享一下我收集整理的数据结构算法题含答案。
数据结构面试专题
1、常用数据结构简介
2、并发集合了解哪些?
3、列举java的集合以及集合之间的继承关系
4、(手写算法)如何判断一个链有环/两条链交叉
5、容器类介绍以及之间的区别
6、List,Set,Map的区别
7、HashMap的实现原理
7.1 HashMap如何put数据(从HashMap源码角度讲解)?
7.2 HashMap如何get数据?
7.3 当两个对象的hashcode相同,即发生碰撞时,HashMap如何处理
7.4 如果两个键的hashcode相同,如何获取值对象?
7.5 hashMap如何扩容
8、ConcurrentHashMap的实现原理
9、ArrayMap和HashMap的对比
10、HashTable实现原理
11、HashMap和HashTable的区别
12、HashMap与HashSet的区别
13、HashSet
与HashMap怎么判断集合元素重复?
14、集合Set实现Hash怎么防止碰撞
15、ArrayList和LinkedList的区别,以及应用场景
答案详解有点太长不方便全部弄到文中来;下面会直接文档的形式分享
.(img-jdgCOyvJ-1716591101826)]