何为同步容器:可以简单地理解为通过 synchronized 来实现同步的容器,如果有 多个线程调用同步容器的方法,它们将会串行执行。比如 Vector,Hashtable, 以及 Collections.synchronizedSet,synchronizedList 等方法返回的容器。 可以通过 ...
分类:
其他好文 时间:
2020-07-12 18:28:12
阅读次数:
56
暴力枚举即可,注意特判k为0的情况。 class Solution { public: vector<int> divingBoard(int shorter, int longer, int k) { if(k == 0) { return {}; } vector<int> res; set<i ...
分类:
其他好文 时间:
2020-07-08 01:02:55
阅读次数:
53
哈希表又叫散列表,这里用数组和链表实现 package com.atguigu.datastructures.hashtable import scala.util.control.Breaks._ object HashTableDemo { def main(args: Array[String ...
分类:
其他好文 时间:
2020-07-05 23:13:41
阅读次数:
64
一、遍历Map的4种方法 在java中所有的map都实现了Map接口,因此所有的Map(如HashMap, TreeMap, LinkedHashMap, Hashtable等)都可以用以下的方式去遍历。 在for循环中使用entries实现Map的遍历: public static void ma ...
分类:
其他好文 时间:
2020-07-05 13:39:38
阅读次数:
49
hashmap、hashtable、Linkedhashmap、concurrentmap ...
分类:
其他好文 时间:
2020-07-04 20:59:50
阅读次数:
78
Map(映射) 一. Map<K,V> Map是映射的顶级接口,实现类主要有:HashMap(重点) HashTable(面试)。 特点: 将键映射到值的对象(键值对) 键唯一,值不唯一。即一个键只能映射一个值,一个值可以对应多个键。 键值对在map中以entry结构储存。 无法保证元素的存入顺序 ...
分类:
其他好文 时间:
2020-07-04 20:27:23
阅读次数:
88
Java容器 容器主要包括Collection和Map两种,Collection存储着对象的集合,而Map存储着键值对(两个对象)的映射表。 Java中常用的线程安全的集合类有Vector、Hashtable、ConcurrentHashMap、Stack Set --TreeSet(有序):基于红 ...
分类:
编程语言 时间:
2020-07-02 22:13:53
阅读次数:
93
1、什么是哈希表? 哈希表(HashTable)又叫做散列表,是根据关键码值(即键值对)而直接访问的数据结构。也就是说,它通过把关键码映射到表中一个位置来访问记录,以加快查找速度。这个映射函数就叫做散列(哈希)函数,存放记录的数组叫做散列表。 2、为什么哈希表的速度快? 在数据结构中,我们对两种数据 ...
分类:
编程语言 时间:
2020-07-01 09:50:13
阅读次数:
51
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