get/put/size加锁

10. \公众以下这段程序,是否可以在str被赋值为任何中文的情形,都得到期望的输出

String str = \公众\"大众XXXXX\"大众\"大众;

jsp实现100以内素数输出最周全的面试题汇总 AJAX

byte[] bytes1 = str.getBytes(\公众\"大众UTF-8\"大众\"大众);

str = new String(bytes1, \公众\公众GBK\"大众\"大众);

byte[] bytes2 = str.getBytes(\"大众\"大众GBK\"大众\公众);

System.out.println(new String(bytes2, \"大众\"大众UTF-8\"大众\"大众));\"大众

11. q: void apply(List<String> a)和 void apply(List<Long> b)是否能实现重载?

a: 不能,期望回答出泛型编译时会进行类型擦除:https://www.cnblogs.com/drizzlewithwind/p/6101081.html

12. String的最大长度是多少(字符)?

\公众稽核String的底层存储以及分外的赋值办法。
同时可以稽核int的表示值范围。

如果new的办法的话,底层是char[],能够容纳的最大长度便是Int的最大值。

以常量的办法复制的时候,受java class格式的限定,只能存储到2^16-1\"大众

13. 图示如何产生去世锁,能否将图示转成Java示例代码,如果涌现了去世锁可以借助哪些java工具定位

synchronized a,b; BLOCKED;

jps -v | grep xxx #获取对应JVM的进程号

jstack -l pid | grep BLOCK

14. 实现一个java中java.util.Timer

\公众调度:堆/韶光轮

精度:线程通信机制实现调度线程唤醒\"大众

15. Java中synchronized和volatile的差异

16. 线程池事情的基本事理以及注事事变,一个完全的线程池该当具备哪些要素

17. volatile利用场景、办理问题及实现事理

18. 有一个长度为N的行列步队中存放了一些数字,如何在8核的机器上用Java快速求出这些数字之和

a:\"大众稽核多线程利用上。
考点如下:

1、利用多线程来分段求和,启动线程数是否合理(与核数的关系)。

2、Java线程池的用法。

3、如何等各个线程运行完之后拿到结果。

4、进一步可以稽核一下fork-join模型\"大众

19. sleep、wait差异

20. 启动两个线程分别交替打印A,B

21. 在资源竞争中,有公正锁和非公正锁,java在并发包中,一样平常默认会利用哪种锁,为什么?

\"大众预期:候选人是否对并发和资源竞争有比较深入的理解和研究

https://blog.csdn.net/zmx729618/article/details/51593666\公众

22. 给一个4核的机器上设计一个计数器,怎么设计高效一些?

计数器是个写多读少的场景,多核机器上可以设置分段计数器充分利用核数,只有在取实际加和的时候才须要锁全局

23. 写一个生产者与消费者的样例代码?不能用java并发凑集

24. 什么是线程池?为什么利用线程池?如何做线程池监控、隔离等?线程池如何调优及利特尔法则?

\"大众描述&解法:

紧张稽核多线程及线程池干系知识。

参考资料:

https://juejin.im/post/5b5e5fa96fb9a04fb900e1ce

https://segmentfault.com/a/1190000000685637\"大众

25. 多线程并发打算100亿内的素数个数

线程池的利用,并发的利用

26. start一个thread的时候,会新申请哪些资源

27. byte取值范围?byte最大值+1赋值给byte是多少?为什么?

28. 打算机原码、反码、补码转化规则,打算时利用的是哪种?为什么要利用这种?

29. float和long谁表示的最大值更大?

30. java int占用字节数?Bit数?表示的整数范围?什么是字节序?如何选定序列化字节序实现正整数升序和字典序同等(场景hbase rowkey设计)?

int根本知识,大端,高位字节在低地址位

spring、tomcat

1. spring申明式事务实现事理是什么?

动态代理、PlatformTransactionManager设计逻辑

2. spring aop的实现事理是什么?

jdk动态代理、cglib两种办法的差异及事理

3. spring事务管理器实现事理,如何实现嵌套事务?

aop、通过savepoint机制实现嵌套事务

4. spring controller是单例还是多例

5. 一个http要求从浏览器发出到达controller前都经历了哪些过程,以Tomcat为例

a: socket连接建立、http协议解析、Servlet规范事情事理、Spring MVC事情事理

6. spring aop及事务实现事理

7. 如何设计一个tomcat

socket监听、线程池、http协议、session管理、servlet规范、jsp引擎等

8. kafka broker leader选举算法

zk的节点特性、折衷者掌握模式

9. zookeeper为何不适宜用做分布式存储

\"大众1、写入能力无法实现随着集群机器数增多而线性增长,最大2w+

2、全量数据放置于内存内,存储大小有限定\"大众

10. zookeeper实现的分布式锁是否会导致脑裂,如果不存在,靠什么机制?

a: \公众1、zab协议担保同等的决策,cp系统

2、session超机遇制,担保决策被client精确实行,client端超时时间设定为server端2/3,zk有个假设不同机器韶光流速大概同等\"大众

算法

1. 一个数组找相加和即是k的两个数字

https://github.com/neoremind/coddding/blob/master/codding/src/main/java/net/neoremind/mycode/argorithm/leetcode/fb.md#two-sum

2. 设计一个大略的扑克牌洗牌程序

3. 一个数组把0都挪到后面去

https://github.com/neoremind/coddding/blob/master/codding/src/main/java/net/neoremind/mycode/argorithm/leetcode/fb.md#move-zeros

4. 检讨是否是回笔墨符串

\"大众https://github.com/neoremind/coddding/blob/master/codding/src/main/java/net/neoremind/mycode/argorithm/leetcode/fb.md#validpalindrome

扩展到难度3分。
https://github.com/neoremind/coddding/blob/master/codding/src/main/java/net/neoremind/mycode/argorithm/leetcode/fb.md#valid-palindrome-ii\公众

5.反转字符串

\"大众期待多种解法

https://github.com/neoremind/coddding/blob/master/codding/src/main/java/net/neoremind/mycode/argorithm/leetcode/fb.md#reverse-string\"大众

6. 两个升序整型数组的合并输出

归并排序,每个有序数组置个游标,比较两个游标的值,小的输出,并右移游标,直至一个到头,把稳须要处理游标到头后,另一个数组剩余值的输出。

7. 多叉树的宽度优先搜索BFS

\"大众1.用行列步队(前辈先出)保存遍历路径。

2.搜索顺序:对节点A,先访问节点的左节点(第一个孩子节点),从该左节点开始一贯向右遍历直到最右叶子节点(所有兄弟节点),此时遍历完A的所有直接孩子。
遍历的同时,节点入行列步队。

3.遍历完A的孩子后,取行列步队中的下一个节点,连续遍历其孩子节点。
直到行列步队为空。
\"大众

8. 判断链表是否成环

9. 徒手写一个hashmap实现

\公众预期其知道java hashmap的内部实现。
可以写出put/get方法。

知道loading factor,知道re-hash的过程。
\"大众

10. 写一个LRU cache, LFU

知道用hashmap,header和tail,可以写伪代码

11. jdk中排序算法都有哪些&韶光繁芜度?快速排序的思路?枢纽元如何选择?

12. 二分查找算法

13. 用两个栈实现一个行列步队

稽核栈和行列步队的不同特点以及coding 能力。

14. 常见的负载均衡算法及其代码实现?

\"大众描述&解法:

稽核编码能力及对负载均衡干系知识的理解。

参考资料:

https://segmentfault.com/a/1190000004492447\"大众

15. 找数组里面第k大的数

https://github.com/neoremind/coddding/blob/master/codding/src/main/java/net/neoremind/mycode/argorithm/leetcode/fb.md#kth-largest-element-in-an-array

16. 合并k个有序的链表

https://github.com/neoremind/coddding/blob/master/codding/src/main/java/net/neoremind/mycode/argorithm/leetcode/fb.md#merge-k-sorted-lists

17. 解迷宫问题

\"大众https://github.com/neoremind/coddding/blob/master/codding/src/main/java/net/neoremind/mycode/argorithm/leetcode/Maze.java

有3种不同难度的,依次递增\"大众

18. 如何判断两个无环单向链表是否相交

给予思路提示,期待多种解法,比较利害

19. 有哪些算法可以办理敏感词匹配的问题?

\"大众敏感词较少可以用单模字符串匹配算法:正则、kmp(减少回溯,匹配每个敏感词繁芜度o(n+m),n和m分别为匹配和被匹配字符长度)

敏感词比较多时利用多模匹配算法,预先将敏感词表建立匹配词典,空间换韶光:倒排、trie树(搜索的韶光繁芜度O(n),n为树高度)

其他方法:布隆过滤器\"大众

20.

项目方案设计

1. 设计一个短网址做事

2. 如何设计一个rpc框架

远程调用实现办法、通信协议、做事路由等

3. api调用如何掌握调用频率 单机版、分布式

4. count数做事设计

\公众 哀求:支撑qps能力1w+,count结果分布[0,1kw],亿级count key,数据生效秒级延迟

稽核点:冗余数据同等性

思路:

数据的支撑能力有限,须要做count缓存,基于redis秒级失落效key的方案反查数据库的掌握不住qps

1、binlog消费等终极同等性数据流出机制

2、count存储事务方面至少支持单行事务+cas机制,(db、hbase)担保幂等消费

3、实现参照融汇\"大众

5. 如何设计一个行列步队

6. 请描述一下同等性哈希的事理

\"大众预期:理解候选人对分布式系统的认识

解法:https://www.cnblogs.com/lpfuture/p/5796398.html\公众

mysql

1. mysql 数据引擎有哪些?有哪些不同

2. mysql为什么利用b+树做索引?

3. mysql事务隔离级别

4. 主键和索引的差异

5. MySQL的存储引擎有哪些,Innodb的默认事务隔离级别是什么,事务隔离级别有哪些,阐述一下每个的含义。

6. mysql update test set name = '123' where id = 1; 加锁情形

\"大众期待:补充存储引擎,隔离级别,id的索引情形

然后分情形解答\"大众

7. mysql去世锁案例剖析,办理方案

8. \公众mysql innodb引擎对付下面的两个sql如何加锁?

SQL1:select from t1 where id = 10;

SQL2:delete from t1 where id = 10;\"大众

\"大众期望分多钟情形来回答,id是否主键,是否有索引,索引是否唯一索引,事务隔离级别是什么,末了如何实行还要看实行操持

http://hedengcheng.com/?p=771\"大众

9. 请描述一下多版本并发掌握:MVCC

\"大众预期:理解候选人对付数据库方面事务以及并发方面的认识

解法:https://blog.csdn.net/aoxida/article/details/50689619\"大众

10. \"大众ssd相对付机器盘,在随机写、顺序写、随机读、顺序读这些场景吞吐能力有何变革?

lsm类存储引擎在ssd上是否还有代价?\"大众

a: \公众iops能力整体提升

随机写须要面临gc带来的背景流量,考虑数据分布,一样平常来说比不前次序写

顺序写仍旧快

随机读和顺序读在没有预读的场景差异不大,极限读吞吐能力同等。

lsm相对付b+树类存储引擎仍有顺序写的上风\"大众

11.

设计模式 架构模式

1. 编写一个单例模式的类

稽核单例的多种写法:饿汉式、

2. 设计模式在生产中有哪些运用?如何理解所用的设计模式?

\"大众描述&解法:

稽核常见设计模式,及Java8编程新特性,以及结合函数式编程对设计模式的理解。

参考资料:

https://github.com/jpsoroulas/java8-patterns

https://github.com/iluwatar/java-design-patterns\"大众

3. 什么是架构模式?常用的架构模式的观点、用法及其优缺陷?

\"大众描述&解法:

紧张稽核常用的分层模式、客服端/做事器模式、主/从模式等常用架构模式。

参考资料:

https://towardsdatascience.com/10-common-software-architectural-patterns-in-a-nutshell-a0b47a1e9013

\"大众

Linux命令 VIM

1.给定一个目录,该目录下某种类型的文件(如png)散落在各个子目录中,如何打算这些png文件的总大小?不限利用的命令,不哀求完备精确

点“关注”,后面答案篇逐步奉上。