美团一面凉经

算法题
反转链表
两个有序数组间相加和的Topk问题(时间复杂度要求O(KlogK)真的不会)

java基础

ArrayList LinkList的区别
hashmap在jdk1.7和1.8版本中有哪些改动
java中都有中怎样处理并发
说一说volatile关键字的底层原理
java都有哪些方式创建类的对象
线程池的工作原理
创建线程都有哪些方式
jdk中有哪些代理模式
说一说jvm工作流程
双亲委派机制
jmm内存模型
说一下java中的常见异常
内存溢出是什么情况

数据库
说一说什么是事务
怎样防止大事务,及处理办法
数据库的隔离级别
如何防止sql注入
mysql的存储引擎
mysql有哪些索引
说一说联合索引和覆盖索引
InnoDB和MyISAM的区别
mysql使用B+树索引而不使用B树或者hash索引

设计模式
说一说有哪些常用的设计模式
策略模式说一下

redis
redis的基本数据类型
为什么要使用redis
怎么样能确保缓存中数据和主存中数据的一致性
redis速度为什么这么快

spring
AOP IOC 的原理
看过Spring的源代码吗(了解很少)
全部评论
TOP k问题的nlogn代码框架,所有top k题目都适用,用的就是quick select叫快速选择,是快排的变种。 private int quickSort(int[] nums, int start, int end, int k) { if (start == end) { return nums[start]; } int pivot = nums[(start + end)/2]; int left = start; //左指针 int right = end; //右指针 while(left <= right) { while(left <= right && nums[left] < pivot) { left++; } while(left <= right && nums[right] > pivot) { right--; } if(left <= right) { int temp = nums[left]; nums[left] = nums[right]; nums[right] = temp; left++; right--; } } if(start + k - 1 <= right) { return quickSort(nums, start, right, k); } if(start + k - 1 >= left) { return quickSort(nums, left, end, k - left + start); } return nums[right + 1]; }
2 回复 分享
发布于 2021-04-10 23:33
请问这是社招还是校招的问题呀
点赞 回复 分享
发布于 2021-04-13 13:28

相关推荐

05-30 18:54
武汉商学院 Java
啥都不会1:先投着吧,大概率找不到实习,没实习的时候再加个项目,然后把个人评价和荣誉奖项删了,赶紧成为八股战神吧,没实习没学历,秋招机会估计不多,把握机会。或者说秋招时间去冲实习,春招冲offer,但是压力会比较大
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
5
1
分享

创作者周榜

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