package LeetCode_279 import java.util.* import kotlin.collections.HashSet /** * 279. Perfect Squares * https://leetcode.com/problems/perfect-squares/d ...
分类:
其他好文 时间:
2020-07-17 01:15:12
阅读次数:
72
public Set<K> keySet() { Set<K> ks = keySet; if (ks == null) { ks = new KeySet(); keySet = ks; } return ks; } final class KeySet extends AbstractSet<K ...
分类:
其他好文 时间:
2020-07-16 18:08:10
阅读次数:
99
<%@page import="java.util.HashMap"%> <%@page import="java.util.Map"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UT ...
分类:
编程语言 时间:
2020-07-16 00:15:45
阅读次数:
90
if (p.hash == hash && ((k = p.key) == key || (key != null && key.equals(k)))) 源码中为什么使用了equals判断相等后,同时需要判断hash码是否相同? 这里需要注意的是key可以使对象即Object类型的,也可以是Lon ...
分类:
其他好文 时间:
2020-07-15 01:04:34
阅读次数:
72
551. 学生出勤记录 I 描述: 思路:字符串包含A的个数 和 是否包含“LLL” 552. 学生出勤记录 II 描述: 思路:动态规划。dp[0-n][0-1 A][0-1-2 L]。 状态转移根据题意分情况 添加P时候, 添加A的时候 L的时候。。 553. 最优除法 描述: 思路:题中说全部 ...
分类:
其他好文 时间:
2020-07-14 13:15:33
阅读次数:
42
目录 1、引出问题 2、结论 3、分析过程 4、总结 回到顶部 1、引出问题 在前面讲解 HashMap 的源码实现时,有如下几点: ①、初始容量为 1<<4,也就是24 = 16 ②、负载因子是0.75,当存入HashMap的元素占比超过整个容量的75%时,进行扩容,而且在不超过int类型的范围时 ...
分类:
编程语言 时间:
2020-07-14 12:58:55
阅读次数:
57
问:如何决定使用 HashMap 还是 TreeMap? 介绍 TreeMap<K,V>的Key值是要求实现java.lang.Comparable,所以迭代的时候TreeMap默认是按照Key值升序排序的;TreeMap的实现是基于红黑树结构。适用于按自然顺序或自定义顺序遍历键(key)。 Has ...
分类:
其他好文 时间:
2020-07-14 10:39:15
阅读次数:
55
概览 我们先来看一看java中所有集合的类关系图。 这里面的类太多了,请放大看,如果放大还看不清,请再放大看,如果还是看不清,请放弃。 我们下面主要分成五个部分来逐个击破。 List List中的元素是有序的、可重复的,主要实现方式有动态数组和链表。 java中提供的List的实现主要有ArrayL ...
分类:
其他好文 时间:
2020-07-13 18:01:44
阅读次数:
85
一、HashMap简介 HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。 HashMap是非线程安全的,只是用于单线程环境下,多线程环境下可以采用concurrent并发包下的concurrentHash ...
分类:
其他好文 时间:
2020-07-12 20:50:02
阅读次数:
55
1. 需要 Map 的主键和取值时,应该迭代 entrySet() 当循环中只需要 Map 的主键时,迭代 keySet() 是正确的。但是,当需要主键和取值时,迭代 entrySet() 才是更高效的做法,比先迭代 keySet() 后再去 get 取值性能更佳。 反例: Map<String, ...
分类:
编程语言 时间:
2020-07-12 20:25:28
阅读次数:
52