百度校招历年经典面试题汇总:Java开发岗
Posted 兔老大RabbitMQ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了百度校招历年经典面试题汇总:Java开发岗相关的知识,希望对你有一定的参考价值。
这个系列计划收集几百份朋友和读者的面经,作者合集方便查看,各位有面经屯着可以联系我哦
这个系列离结束差的还特别多,会更新涵盖所有一线大厂的所有岗位,也可以关注一下。
(1)、Java中的多态
(2)、Object类下的方法
(3)、Finalize的作用和使用场景
(4)、Hashcode和equals
(5)、为什么要同时重写hashcode和equals,不同时重写会出现哪些问题?
(6)、Hashmap的原理
(7)、Hashmap如何变线程安全,每种方式的优缺点
(8)、垃圾回收机制
(9)、Jvm的参数
(10)、手写一个单例模式
(11)、快速排序的思想,给个数组,模拟快排的过程并手写快排。
(12)、一个图书馆管理系统,数据库怎么设计
(13)、Redis的特点
(14)、分布式事务
(15)、反爬虫的机制,有哪些方式
(16)、手写代码:反转单链表
(17)、手写代码:实现类似微博子结构的数据结构,输入一系列父子关系,输出一个类似微博评论的父子结构图
(18)、手写代码:Java多线程
(19)、手写代码:Java的soeket编程,服务端和客户端
(20)、进程间的通信方式
(21)、手写代码: 爬楼梯,写出状态转移方程
(22)、智力题:时针分针什么时候重合
(23)、手写代码:给定一个数字三角形,找到从顶部到底部的最小路径和。每一步可以移动到下面一行的相邻数字上。求出最短那条的路径,并递归求出所有的路径。
(24)、会不会滥用设计模式
(25)、多线程条件变量为什么要在while体里
(26)、在线笔试题:第一个是链表排序,第二个是一个场景题,给定一个语言系统(类似汇编),写机器人的芯片程序来实现两个机器人相遇的功能
(27)、IOC/AOP/事务管理
(28)、TCP/IP各层协议栈的作用,分别存在哪些协议
(29)、IP路由选路协议介绍
(30)、TCP如何保证可靠传输
(31)、Spring DAO层的作用?与直接写Connection代码的区别
(32)、Object类所有的方法各自的实现原理及作用
(33)、虚notify方法为什么唤醒的是等待队列中的任意一个?如何实现的
(34)、Synchronized和ReentrantLock的区别
(35)、JDk版本升高,Synchronized的性能不断增长,高版本的JDK做了哪些改进从而实现这一效果?
(36)、可重入锁的含义?Synchronized是可重入锁吗?如果不是,将产生哪些危害?
(37)、垃圾回收的过程
(38)、所有对象度需要经过全部GC过程吗?有例外吗?
(39)、GC Root链如何理解
(40)、引用计数法在JDK哪些版本使用过吗?
(41)、算法题:无序数组中查找最小缺失的正整数?时间复杂度:O(n),空间复杂度:O(1)如:【1,2,3,5,7】,这个答案是4,【-1,-2,-3】,这个答案是1。
(42)、算法:一张表,表中记录为:一个节点,节点的父节点,节点是父节点的左孩子还是右孩子。Eg:record1:A B left,代表A是B的左孩子;record2: B C right,代表B是C的右孩子。题目:将表形式的二叉树还原为二叉树。
(43)、b+树
(44)、JVM内存
(45)、二叉树的广度优先遍历;
(46)、字典树(即1024叉树)保存在数据库里,方便存储,方便还原。问如何保存。(运气好,答案就是一面的问题),求最优解
(47)、数组的最大子序列和;上升到数组的两个最大子序列和(不能重复),k个子序列最大和呢?
(48)、基础:hashmap rehash实现,concurrentHashMap 实现。
(49)、500个梨放在10个框里,自由放。保证在说出1-500任意个数字时,你都可以给我几个框,这几个框里面的梨的总数为给定数。如:第一个框放1个,第二个放两个,第三个放四个,可以得到1-7任意数;
(50)、任意图形,求几笔可以完成(顶点可以重复画,边不可以)
(51)、给定一个N,当N是偶数时,除以2;当N是奇数时两种策略:一种是N-1;另一种为N+1;求使N变到1最少的步骤数;如:N = 3;步骤为3-1=2;2/2=1; 步骤数为2;N= 4;步骤4/2=2;2/2=1; 步骤数为2;
(52)、操作系统:信号量 管道 管程
(53)、String 如何垃圾回收
(54)、String创建对象的方式 分别存储在哪里
(55)、Redis和mysql区别,各自的应用场景
(56)、KMP
(57)、spring源码
(58)、开源中间件
(59)、手写算法:坐标系中一系列点,只可以向下、向上、向右走,不可以向左走,不可以改变坐标顺序;求距离。
(60)、redis出现故障怎么办,redis集群如何设计
(61)、分布式
(62)、主从复制设计方案
(63)、设计可用性和容错性都满足的系统,画图
(64)、写SQL ,一个表行变列
(65)、TCP窗口
(66)、http cookie
(67)、多线程hashmap执行put会发生什么,为什么?发生在哪个环节?hashmap链表如果不采用头插法会怎样,JDK1.8如何解决。
(68)、手写代码:spring AOP实现拦截器,写出代码以及XML配置
(69)、full gc 调优过程,如何排错
(70)、手写算法:找出一个字符串中所有有效的IP地址
(71)、手写算法:读两个文件写到第三个中
(72)、手写算法:从日志中找出同一秒内 记录多少行
(73)、手写SQL:查一个学生表中所有成绩大于80分的全部信息并且按照id降序排序
(74)、手写代码:socket 基于TCP、CS
(75)、手写算法:实现生产者消费者模型
(76)、TCP拥塞控制
(77)、手写算法:非递归的二叉树后序遍历
(78)、手写算法:一个数组中找出连续c个数字不超过T的组数有多少
(79)、手写算法:归并排序
(80)、MySQL和redis区别,redis在不同数据结构的应用场景。
(81)、智力题:9个硬币 一个轻 如何用最少次数称重
(82)、MySQL有哪些索引
(83)、redis掉电怎么办
以上是关于百度校招历年经典面试题汇总:Java开发岗的主要内容,如果未能解决你的问题,请参考以下文章