关于面试:初面复盘2020815后端

3次阅读

共计 1583 个字符,预计需要花费 4 分钟才能阅读完成。

先说一句:面试官上来强调本人不是学 java 的,次要探讨为主,可是我发现面试官问的问题一点都不像没学过 java~
共面了 1 小时 40 分钟

1.java 垃圾回收机制
新生代 / 老年代 其它垃圾回收机制
2.java 面向对象个性
继承
封装
多态
3. 设计模式

4. 单例模式

5.map 的底层实现

6.hash 函数如何实现

7. 哈希抵触的解决办法
再哈希
建设公共缓冲区

8.hashmap 查问复杂度 / 升高复杂度办法

9.hashmap 线程不平安

10.juc 中的 concurrentHashmap 如何保障线程平安

11. 罕用的汇合类型
arraylist
linkedlist
12.arrayList 和 linkedList 区别

13. 链表中如何使查问速度更快
建索引?
14. 晓得哪些本地缓存?redis?lru?

15. 计算机网络七层模型

16. 浏览器每一个标签页都是一次 tcp 连贯吗

17.http 和 https 的比拟

18.https 加密算法是对称的还是非对称的?

19.TCP 三次握手四次挥手

20. 伪造第三次握手,如何保障?

21.syn 攻打?还是什么攻打?

22.TIME_WAIT 作用

23. 多路复用、epoll 办法的长处 存储连贯的是链表吗
select poll epoll
24. 过程和线程

25. 线程间通信

26. 过程间通信

27. 共享内存是在 A 过程中还是 B 过程?
应该都不是
28. 线程间同步

29.sychronized 和 RetrantLock 异同点

30. 乐观锁和乐观锁,他们的效率

31. 每次申请都是对锁的一个批改,两种策略效率如何

32. 排序算法及各自的最好最坏复杂度及稳定性

33. 归并排序和疾速排序的算法思维
分治
34. 疾速排序的最坏状况,如何扭转

35. 雷同的子问题能够用分治法,那不同的子问题?

36. 最初一题算法题
牛客网本题探讨链接
小 Q 在进行一场竞技游戏,这场游戏的输赢要害就在于是否抢夺一条长度为 L 的河道,即能够看做是 [0,L] 的一条数轴。
这款竞技游戏当中有 n 个能够提供视线的道具 – 真视守卫,第 i 个真视守卫可能笼罩[xi,yi]。当初小 Q 想晓得至多用几个真视守卫就能够笼罩整段河道。

输出形容:
输出包含 n + 1 行
第一行包含两个正整数 n 和 L(1<=n<=10^5,1<=L<=10^9)
接下来的 n 行,每行两个正整数 xi,yi(0<=xi<=yi<=10^9), 示意第 i 个真视守卫笼罩的区间
输入形容,一个示意起码须要的真视守卫数量,如果无解,输入 -1。

样例:
输出:
4 6
3 6
2 4
0 2
4 7
输入
3

import java.util.Arrays;
import java.util.Scanner;
public class Main {public static void main(String[] args) {Scanner input = new Scanner(System.in);
        int n = input.nextInt();
        int L = input.nextInt();
        int[][] nums = new int[n][2];
        int ce = 0;
        while (ce < n) {nums[ce][0] = input.nextInt();
            nums[ce][1] = input.nextInt();
            ce++;
        }
        System.out.println(guidenum(nums, L));

    }

    public static int guidenum(int[][] nums, int L) {
        int count = 0;
        Arrays.sort(nums, (a, b) -> a[0] - b[0]);
        int start = 0, end = 0;
        for (int i = 0; start < L;) {for (; i < nums.length && nums[i][0] <= start; i++)
                end = Math.max(end, nums[i][1]);
            if (start == end) {return -1;}
            start = end;
            count++;
        }
        return count;
    }
}
正文完
 0