public static Set<Integer> getIds(Integer[] a, Integer[] b){ Set<Integer> same = new HashSet<Integer>(); //用来存放两个数组中相同的元素 Set<Integer> temp = new Hash ...
分类:
编程语言 时间:
2017-06-15 10:34:08
阅读次数:
212
Set接口(唯一,无序(添加顺序)) 实现类:HashSet (唯一,无序) TreeSet(唯一,有序(大小顺序)) 子类:LinkedHashSet(唯一,有序(添加顺序)) HashSet:采用哈希表的存储结构;在HashSet中添加元素,实现唯一性的原理:添加元素时候,会先调用Object中 ...
分类:
编程语言 时间:
2017-06-14 22:28:13
阅读次数:
193
public static void compare() { List<String> list = new ArrayList<String>(); Set<String> set = new HashSet<String>(); for(int i=0;i<100000;i++) { list. ...
分类:
编程语言 时间:
2017-06-14 18:17:39
阅读次数:
221
方法一、用HashSet来解决 方法二、计算循环 用两个指针,一个fast指针,每次走两步,一个slow指针,每次走一步,当fast指针与slow指针相遇时,假设fast指针走了2x,那么slow指针走了x,由于有环,那么为了便于理解,分为两种情况 情况一: 1、当fast指针仅仅只比slow指针多 ...
分类:
其他好文 时间:
2017-06-14 14:33:11
阅读次数:
145
集合框架包含的内容 l java中的集合,位于包java.util l Java集合框架分为2大接口: n Collection u List(ArrayList、LinkedList) u Set(HashSet、TreeSet) n Map u HashMap u TreeMap l 集合框架的 ...
分类:
其他好文 时间:
2017-06-12 10:46:52
阅读次数:
231
字符串的哈希值 任何对象都有哈希值 在java.lang.Object类中 有方法如下,所以所有类的对象都可以调用这个方法 int hashCode() 返回该对象的哈希码值。 若没有重写父类的hashCode()方法 每次调用方法都返回不同的哈希值 java.lang.String 类 已经重写了 ...
分类:
其他好文 时间:
2017-06-12 00:46:06
阅读次数:
280
写在前面 开发 hashset 常用的套路: 我们一般只用 map 的键来保存数据,值是没有用的。所以来缓存集合数据会造成内存浪费。 空对象 空对象是个神奇的东西。它指的是没有字段的结构类型。 它牛逼的地方在于: 可以和普通结构一样操作 var a = []struct{}{struct{}{}} ...
分类:
其他好文 时间:
2017-06-11 18:20:07
阅读次数:
116
一、重构遗留代码 为了进一步解释如何重构一流代码,本节将距离说明如何将一段使用循环进行集合操作的代码,重构成基于Stream的操作。 假定选取一组专辑,找出其中所有长度大于一分钟的曲目名称。下面是一个例子,首先初始化一个set对象,用来保存找到的曲目名称。然后使用for循环遍历所有专辑,每次循环中在 ...
分类:
其他好文 时间:
2017-06-10 19:23:18
阅读次数:
140
一、概述 使用HashMap存储,非线程安全; 二、实现 HashSet 底层使用 HashMap 来保存所有元素,因此 HashSet 的实现比较简单,相关 HashSet 的操作,基本上都是直接调用底层 HashMap 的相关方法来完成, 应该为保存到 HashSet 中的对象覆盖 hashCo ...
分类:
其他好文 时间:
2017-06-09 14:07:55
阅读次数:
153
给定一个字符串 String s = "leetcode" dict = ["leet", "code"]. 查看一下是够是字典中的词语组成。假设是返回true,否则返回false。 下边提供3种思路 1.动态算法 import java.util.HashSet; import java.util ...
分类:
编程语言 时间:
2017-06-09 12:32:04
阅读次数:
180