百度一面面经

后端太卷了,就投了客户端
开头是一道算法题,判断是否为合法的ipv4地址,然后就开始问八股文
1.jvm中的数据区域
2.遇到过oom吗?如果遇到oom要怎么解决
4.程序计数器会发生OOM吗?我居然答说会,但是其实不会,程序计数器是唯一一个不会oom的地方
5.gc算法有那些?垃圾回收器?
6.hashmap介绍,hashmap为什么到8再转?(这个不懂)为什么不一开始就用红黑树?
7.hashmap的hash函数是怎么实现?你知道的hash函数有哪些(前面的了解,这个不了解)?
8.hashmap为什么会直接把hashcode取模要用异或。。。(这个我也不会)?
7.hashmap是不是线程安全的?有那些是线程安全的?与cocurrenthashmap有什么区别?
8.hashmap put一个null进去,再put一个null进去会怎么样?
9.你知道的内部类有哪些java当中的?
10.静态内部类和内部类有什么区别?
11.TCP UDP区别?TCP怎么保证可靠数据传输?三次握手过程?
12.操作系统的内存分配算法有哪些?(这个我也不会)
13.说一说LRU
14.进程线程区别?你确认进程真的是资源分配的最小单位吗?进程线程通信?
15.你有用过数据库吗,怎么判断是否一个查询用了索引?除了索引怎么优化查询速度?
我说的是上缓存,还有优化sql,比如最左前缀,避免分库分表join limit
16.你了解的设计模式?我说了责任链和策略?然后我详细讲了我实习是怎么用责任链
17.单例模式写一个?我先写的是枚举的写法,他让我换一个,然后我就写了一个DCL的给他。
18.kotlin的一些关键字?问的我都不会,我说我只会把java改成kotlin然后!! ?.什么的
反问?你们这个是北京百度吗?部门是做什么的?什么时候会出结果?

我答不清楚的几个:
程序计数器oom?程序计数器不会oom,我答错了
hashmap put两个null进去?我当时说会覆盖,但是那个面试官说不是,我又重试了一下,确实会覆盖
hash方法又哪些?
除法hash:hash(key) = key mod M
乘法hash:hash(key) = f通常设置 M 为 2 的幂次方。
W 为计算机字长大小(也为2的幂次方)。
a 为一个非常接近于W的数。
floor( M/W * ( a * key mod W) )
斐波那契hash
也就是当 “乘法哈希法” 的 a ≈ W/φ,1/φ ≈ (√5-1)/2 = 0.618 033 988 时情况。而,1/φ ≈ (√5-1)/2 = 0.618 033 988,可称为黄金分割点。
静态内部类和内部类区别?
静态内部类可以访问外部类的静态变量和方法,但是不能访问非静态的
内部类可以可以访问外部类的静态变量和方法,也访问非静态的
生成一个静态内部类不需要外部类成员:这是静态内部类和成员内部类的区别。静态内部类的对象可以直接生成:Outer.Inner in = new Outer.Inner();而不需要通过生成外部类对象来生成。这样实际上使静态内部类成为了一个顶级类
内部类在字节码中是怎么样的?每个类会产生一个.class文件,文件名即为类名。同样,内部类也会产生这么一个.class文件,但是它的名称却不是内部类的类名,而是有着严格的限制:外围类的名字,加上$,再加上内部类名字。
操作系统内存分配算法?
位图算法、伙伴算法、链式算法
进程线程通信方式?这个我网上没找到
hashmap异或而不是直接取余?当数组的长度很短时,只有低位数的hashcode值能参与运算。而让高16位参与运算可以更好的均匀散列,减少碰撞,进一步降低hash冲突的几率。并且使得高16位和低16位的信息都被保留了。
#面经##百度##校招##Java工程师#
全部评论
不写算法题吗、
1 回复 分享
发布于 2021-08-15 17:01
操作系统的内存分配算法应该指的是动态分区分配中的几个算法?我感觉
点赞 回复 分享
发布于 2021-08-17 11:38
这跟后端也没啥区别啊
点赞 回复 分享
发布于 2021-08-16 23:31
虚拟机栈和本地方法栈也不会oom噢 oom主要发生在堆中 方法区中也有
点赞 回复 分享
发布于 2021-08-16 10:49
结果呢?楼主?过了吗?
点赞 回复 分享
发布于 2021-08-15 17:00

相关推荐

03-09 18:21
东北大学 Java
hot🔥100 全部思路现已奉上 并附有一些模版和方法帮助各位uu面试前快速复习激活思路 文字省略部分看图即可栈69.有效的括号:奇数 return false 哈希表保存对应关系 左括号入右括号判断栈顶左括号对应关系70.最小栈:栈中保存添加元素 和 前缀最小值 初始化栈底添加Integer.MAX_VALUE(+∞)哨兵对应栈为空71.字符串解码:DFS递归 k[encoded_string] 嵌套的括号从内到外解码72.每日温度:单调栈 从右到左(peek是索引小数值更大数)从左到右(todolist)73.柱状图中最大的矩形:单调栈 存储 柱子下标 遍历过程找每个柱子左边界(第一个比它矮的柱子)和右边界(第一个比它矮的柱子)堆74.数组中的第k个最大元素:(找下标n - k元素)快排 随机数选择pivot(遇到大量重复元素会退化到O(n<sup>2</sup>))两种思路:1-把 < pivot 改成 ≤ pivot三路划分:小于、等于和大于基准数的所有元素75.前k个高频元素:🪣桶排序 哈希表现统计元素出现次数 出现次数相同元素放入同一个桶,然后倒序遍历桶76.数据流的中位数:大小堆 最大堆比最小堆多一个数贪心77.买卖股票的最佳时机:更新minPrice 找最大prices[i] - minPrice78.跳跃游戏:维护最右可达位置max,i > max return false79.跳跃游戏II:更新从当前所有位置能跳到的最远位置   当走到当前跳跃能到达的最远位置进行一次新的跳跃80.划分字母区间:遍历字符串,计算字母的最后出现下标(last[i])合并区间动态规划递推 - 状态转移方程初始值 - 递归边界0-1背包每个物品只能选 0 个或 1 个分割等和子集、子集和问题完全背包每个物品可以选任意多次零钱兑换、完全平方数问题0-1 背包:物品唯一,怕重复 → 倒序遍历完全背包:物品无限,要重复 → 正序遍历多维动态规划技巧
点赞 评论 收藏
分享
评论
4
29
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务