一、百度java程序员面试问题
1.Spring或者数据库的事物隔离级别和传播特性是怎样的
2.final都能修饰什么,它起到什么作用
3.statement和prepareStatement两者有什么区别
4.HashMap和HashTable主要的区别是什么
5.LinkedList和ArrayList的区别是什么
6.HashMap底层的数据结构是怎样的
7.数据库的索引是如何实现的,主键索引和联合索引数据结构有什么区别
8.Servlet的原理是什么,是否是线程安全的
9.JDBC的目的是什么,是一种接口还是一种实现(JDBC本身是一种标准,每种数据库的JDBC是一种实现),有什么主要的技术
10.用过哪种连接池,为什么要用连接池
11.用过哪些缓存,用于什么场景,redis怎么实现分布式锁
二、百度java程序员初试问题
1.写一个单例模式
2.斐波那契数列的递归与遍历实现
3.给定2,3,5面值的硬币若干,给出一个数字,计算拼凑这个数字最少用到硬币的个数
4.有10亿个数字,如何找出top100.(引申问题,链表与数组的的选用)
5.HashMap的内部数据结构(第二次问),Rehash的实现
6.ConcurrentHashMap的实现原理,与HashTable区别是什么(分Segment)
7.Java有哪些同步机制
8.数据库有哪些锁,哪些引擎,分别共享锁和排他锁的区别,应用场景有什么不同
9.B树和B+树的区别,为什么选用B+树作为数据库索引