一、Collection接口 1、List接口 ,Set接口 2、ArrayLIst,LinkedList,Vector,Stack 3、HashSet,LInkedHashSet,TreeSet 二、Map接口 1、HashMap,LinkedHashMap,TreeMap; 三、Iterator ...
分类:
编程语言 时间:
2020-07-01 09:21:03
阅读次数:
72
HashMap详解(基于JDK 1.8) 简介 Map接口定义了映射关系,有四个常用实现类: HashMap Hashtable LinkedHashMap TreeMap HashMap: 根据键key的hashCode值存储数据. 访问速度快,遍历速度较慢. 最多允许一条记录的键为null. 允 ...
分类:
其他好文 时间:
2020-06-30 22:12:04
阅读次数:
81
三种散列表的公共部分 三者都是存储键值对的Key-Value key会被映射到数组索引, Entry对象则是数组中对应的值。 Key通过Hash算法得到哈希码(HashCode), 通过哈希码与数组中的索引对应。 因此所有的键值对Hash表都是无序储存的。 键值对的查找过程: (hashCode() ...
分类:
其他好文 时间:
2020-06-30 16:04:40
阅读次数:
88
问题 ps:部分代码参考leetcode和剑指offer。另外,三道题目都可以通过HashMap和Hashset做 1、只出现一次的数字 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 def singleNumber(nums): """ 异 ...
分类:
其他好文 时间:
2020-06-29 16:53:37
阅读次数:
60
记忆化递归: int max = 0; public int lenLongestFibSubseq(int[] A) { int[][] cache = new int[A.length][A.length]; for (int i = 0; i < A.length - 1; i++) { fo ...
分类:
其他好文 时间:
2020-06-29 00:17:42
阅读次数:
57
hashCode() 和 equals() 方法的作用其实一样, 都是用来对比两个对象是否相等, 都需要自己去覆写来提高对比效率和准确度, 在向 hashSet, hashMap 等底层用 hash值 判断的集合中存值时, 被存储的对象都需要覆写这两个方法. hashCode() 方法返回一个哈希值 ...
分类:
其他好文 时间:
2020-06-28 22:20:07
阅读次数:
69
ArrayList<String> arrayList = new ArrayList<String>(); <String>指泛型,规定这里存储什么类型数据 存储int型用Integer 存储double型用Double public class ArrayListTest { public st ...
分类:
编程语言 时间:
2020-06-27 22:46:21
阅读次数:
58
创建者模式-原型模式 一、概述 是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价比较大时,则采用这种模式。例如,一个对象需要在一个高代价的数据库操作之后被创建。我 ...
分类:
其他好文 时间:
2020-06-27 10:01:18
阅读次数:
58
线程池 自定义线程池 import java.util.ArrayDeque; import java.util.Deque; import java.util.HashSet; import java.util.concurrent.TimeUnit; import java.util.concu ...
分类:
编程语言 时间:
2020-06-26 18:00:48
阅读次数:
60
package com.example.lettcode.offer; import java.util.*; /** * @Class FindRepeatNumber * @Description 剑指 Offer 03. 数组中重复的数字 * 找出数组中重复的数字。 * 在一个长度为 n 的数 ...
分类:
编程语言 时间:
2020-06-26 13:01:42
阅读次数:
67