java面试题及答案2020,java最新面试题汇总(二十一)

java面试题及答案2020

一面-2020/01/13-牛客网

  1. 一面面试官很不错,一开始还几次听不到我这边的声音,不知道是牛客的问题还是面试官的电脑问题;不过这个面试官真的挺好的,没有特别严肃,整体感觉还可以。

  2. 自我介绍:讲了下自己的项目经历、实习经历

  3. 问了下技术栈

  4. HashMap 和 ConcurrentHashMap 的区别?(不会,当时太菜了)

  5. 线程池(当时就说了怎么用,连底层结构都答不上来,太丢人了)

  6. 数据库的锁(不会)

  7. 数据库的三范式(不会,还瞎扯了一堆)

  8. 第一范式是属性不可分;

  9. 第二范式是在第一范式的基础上,要求实体的属性完全依赖于主关键字,没有部分依赖;

  10. 第三范式是在第二范式的基础上,所有属性都和主键有直接关系,没有传递依赖。

  11. 线程和进程的区别

  12. 缓存(简单说了下浏览器缓存的作用)

  13. 算法题目1:随机链表复制(秒了)

  14. 给定一个链表,节点数据结构如下,除了包含一个next指针,还包含一个rand指针,随机指向链表的某一元素,或者为空指针,实现一个函数,深复制这个链表,要求空间复杂度O(1)。
    struct Node {
    int val;
    Node* next;
    Node* rand;
    }
    算法题目2:滑动窗口算法(卡了蛮久)

  15. 给定m个不重复的字符[a,b,c,d], 以及一个长度为n的字符串tbcacbdata, 问能否在这个字符串中找到应该长度为m的连续子串,使得这个子串刚好由上面m个字符组成,顺序无所谓,返回任意满足条件的一个子串的起始位置,未找到返回-1。比如上面的这个例子,acbd,返回3。要求优化到O(N)。

  16. 这道题没接触过,有点懵,不过在面试官提醒下写出了一个简单的版本,对不在m个中的字符和重复的字符进行了优化。

所有面试题持续更新+答案整理见这里:
java面试题及答案2020持续整理

猜你喜欢

转载自www.cnblogs.com/javamianshiti/p/12937340.html
今日推荐