摘要: 实现一个 Trie (前缀树),包含 insert, search, 和 startsWith 这三个操作。 示例: Trie trie = new Trie(); trie.insert("apple"); trie.search("apple"); /... 阅读全文
posted @ 2019-09-04 10:24 小帅学java 阅读(6) 评论(0) 推荐(0)
摘要: 给定一个整数数组 nums,求出数组从索引 i 到 j (i ≤ j) 范围内元素的总和,包含 i, j 两点。 update(i, val) 函数可以通过将下标为 i 的数值更新为 val,从而对数列进行修改。 示例: Given nums = [1,... 阅读全文
posted @ 2019-09-03 19:24 小帅学java 阅读(3) 评论(0) 推荐(0)
摘要: 给定一个整数数组 nums,求出数组从索引 i 到 j (i ≤ j) 范围内元素的总和,包含 i, j 两点。 示例: 给定 nums = [-2, 0, 3, -5, 2, -1],求和函数为 sumRange() sumRange(0, 2) ->... 阅读全文
posted @ 2019-09-03 18:59 小帅学java 阅读(8) 评论(0) 推荐(0)
摘要: 队列接口: public interface Queue { int getSize(); boolean isEmpty(); void enqueue(E e); E dequeue(); E getFront();} 最大堆代码(基于完全二叉树): pu... 阅读全文
posted @ 2019-09-01 20:22 小帅学java 阅读(13) 评论(0) 推荐(0)
摘要: 二分搜索树: public class BSTMap, V> implements Map { private class Node { public K key; public V value; public Node left, right; pu... 阅读全文
posted @ 2019-08-29 11:01 小帅学java 阅读(6) 评论(0) 推荐(0)
摘要: 给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2,2] 示例 2: 输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出: [4,... 阅读全文
posted @ 2019-08-29 10:50 小帅学java 阅读(5) 评论(0) 推荐(0)
摘要: 给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2] 示例 2: 输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出: [9,4]... 阅读全文
posted @ 2019-08-29 10:46 小帅学java 阅读(16) 评论(0) 推荐(0)
摘要: 国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串, 比如: "a" 对应 ".-", "b" 对应 "-...", "c" 对应 "-.-.", 等等。 为了方便,所有26个英文字母对应摩尔斯密码表如下: [".-","-.... 阅读全文
posted @ 2019-08-27 13:37 小帅学java 阅读(10) 评论(0) 推荐(0)
摘要: 集合接口: public interface Set { void add(E e); void remove(E e); boolean contains(E e); int getSize(); boolean isEmpty();} 二分搜索树实现集合:... 阅读全文
posted @ 2019-08-27 11:35 小帅学java 阅读(8) 评论(0) 推荐(0)
摘要: import java.util.LinkedList;import java.util.Queue;import java.util.Stack;public class BST> { private class Node { public E e; p... 阅读全文
posted @ 2019-08-26 17:39 小帅学java 阅读(6) 评论(0) 推荐(0)