摘要:
给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字。 例如,从根到叶子节点路径1->2->3代表数字 123。 计算从根到叶子节点生成的所有数字之和。 说明: 叶子节点是指没有子节点的节点。 示例 1: 输入: [1,2,3] 1 / \ 2 3 输出: 阅读全文
摘要:
java领域的对象如何传输 基于socket进行对象传输 如果传输的对象没有序列化会报错: 那么如何解决这个问题呢? 实现一个Serializable接口,再次运行就可以看到对象可以正常传输了 public class User implements Serializeable{ } 序列化的意义 阅读全文
摘要:
给你一个整数数组 arr,请你帮忙统计数组中每个数的出现次数。 如果每个数的出现次数都是独一无二的,就返回 true;否则返回 false。 示例 1: 输入:arr = [1,2,2,1,1,3] 输出:true 解释:在该数组中,1 出现了 3 次,2 出现了 2 次,3 只出现了 1 次。没有 阅读全文
摘要:
我们把数组 A 中符合下列属性的任意连续子数组 B 称为 “山脉”: B.length >= 3 存在 0 < i < B.length - 1 使得 B[0] < B[1] < ... B[i-1] < B[i] > B[i+1] > ... > B[B.length - 1](注意:B 可以是 阅读全文
摘要:
请判断一个链表是否为回文链表。 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true 进阶: 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题? 方法一:快慢指针 思路: 1.使用快慢指针找到链表的中间点 2.反转中间点后面的链表 阅读全文
摘要:
字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一个字母只会出现在其中的一个片段。返回一个表示每个字符串片段的长度的列表。 示例 1: 输入:S = "ababcbacadefegdehijhklij" 输出:[9,7,8] 解释: 划分结果为 "ababcbaca", "de 阅读全文
摘要:
一个http请求的整个流程 负载域名解析的DNS服务 首先,用户访问一个域名,会经过DNS解析 DNS,它和http协议一样是位于应用层的协议,主要提供域名到IP的解析服务。其实我们不用域名也可以访问目标主机的服务,但是IP本身不是那么容易记,使用域名进行替换使得用户更容易记住。 加速静态内容访问速 阅读全文
摘要:
架构的本质 架构的本质就是对系统进行有序化重构,是系统不断进化 架构是怎么实现无序到有序的呢?基本的手段就是分和合,拆分的结果是开发人员能够做到业务聚焦、技能聚焦,实现开发敏捷,合的结果是系统变得柔性,可以因需而变,实现业务敏捷。 架构的分类 1.业务架构从概念层面帮助开发人员更好的理解系统,比如业 阅读全文
摘要:
在java中,如果每个请求到达就创建一个新线程,创建和销毁线程花费的时间和消耗的系统资源都相当大,甚至可能要比在处理实际的用户请求的时间和资源要多的多。 如果在一个JVM里面创建太多的线程,可能会使系统由于过度消耗内存或”切换过度“而导致系统资源不足。 为了解决这个问题,有了线程池的概念。线 阅读全文
摘要:
使用场景 ConcurrentHashMap是J.U.C包里面提供的一个线程安全并且高效的hashMap。所以在并发编程的场景中使用的频率比较高。 api使用 ConcurrentHashMap是Map的派生类,所以api基本和HashMap是类似,主要就是put、get这些方法,接下来基于Conc 阅读全文