摘要: 以下内容摘自Java程序设计(基础、编程抽象和算法设计) 在Java集合框架中,Map是一个接口,必须用实现了Map接口的具体类来创建对象。集合库中包含了两种这样的类:HashMap和TreeMap。我们今天只介绍HashMap。 方法: 1、创建对象: Map<Integer, Integer> 阅读全文
posted @ 2020-11-02 12:23 Peterxiazhen 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 给定一个整数数组和一个整数k,你需要找到该数组中和为k的连续的子数组的个数。 输入:nums = [1,1,1], k = 2 输出: 2 , [1,1] 与 [1,1] 为两种不同的情况。方法一、前缀和(不优化)定义pre[i]为[0..i]里所有数的和,即前缀和。you递推关系得到: pre[i 阅读全文
posted @ 2020-11-02 11:56 Peterxiazhen 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 求一棵二叉树的直径长度:任意两个节点路径长度中的最大值。 例子: 在这棵二叉树中,直径长度是3,路径为[4 2 1 3]或者[5 2 1 3]。 从例子中我们可以看到,求二叉树的直径长度可以求左右子树的深度,最后求和即可。 而求左右子树的深度可以用深度优先搜索dfs。这条路径可能穿过也可能不穿过根结 阅读全文
posted @ 2020-11-02 08:52 Peterxiazhen 阅读(97) 评论(0) 推荐(0) 编辑