概述 本文是基于jdk8_271版本进行分析的。 Hashtable与HashMap一样,是一个存储key-value的双列集合。底层是基于数组+链表实现的,没有红黑树结构。Hashtable默认初始化容量为11,Hashtable也会动态扩容,与HashMap不同的是,每次扩容的容量是原容量2倍+ ...
分类:
编程语言 时间:
2021-06-02 10:43:44
阅读次数:
0
以后会慢慢更的。 大体参考了劝退树,OI-wiki 和 \(\rm Menci\)、\(\rm Zory\) 两位大佬的 \(\rm Blog\),在此表示感谢,其中在知识架构上主要参考了劝退树,OI-wiki 和 \(\rm Zory\) 的 \(\rm Blog\),而具体内容上则主要参考了后三 ...
分类:
编程语言 时间:
2021-06-02 10:36:21
阅读次数:
0
1. HashMap的底层实现原理 HashMap的底层:数组+链表 (jdk7及之前) 数组+链表+红黑树 (jdk 8)HashMap的底层实现原理?以jdk7为例说明: HashMap map = new HashMap(): 在实例化以后,底层创建了长度是16的一维数组Entry[] tab ...
分类:
其他好文 时间:
2021-06-02 10:34:15
阅读次数:
0
C. Valera and Elections dp + dfs 题意 一棵树, 树边有的有标记有的没标记, 如果选择一个点, 能将点到根最短路径上的边全部打上标记, 问最少选几个点, 使所有的边都被打上标记. 思路 \(f[i]:表示最少需要选择的点数使以i为根的子树都被标记.\) 因此如果u的邻 ...
分类:
其他好文 时间:
2021-06-02 10:31:19
阅读次数:
0
思想和分治凸包算法很像。 把生成树的$(\sum_x,\sum_y)\(投射到平面上,我们要找到\)(x,y)$使得$x,y$最小。 可以证明,最优的$(x,y)$在凸包上。 证明可见2018国集论文。 考虑怎么求凸包,可以分治,保证当前处理的$(l,r)$是凸包上的连续一段。 先求出凸包的最左/最 ...
分类:
其他好文 时间:
2021-05-25 18:40:07
阅读次数:
0
BFS: #1.设置队列 from queue import Queue q = Queue() #2.设置closed表 closed = set()/[] #3.开始循环 while not q.empty(): #取出 a = q.get() #判断 if a not in cloesd : ...
分类:
编程语言 时间:
2021-05-25 18:19:31
阅读次数:
0
C语言 #include "stdbool.h" #define NULL ((void *)0) //Definition for a binary tree node. struct TreeNode { int val; struct TreeNode *left; struct TreeNo ...
分类:
编程语言 时间:
2021-05-25 17:51:01
阅读次数:
0
平衡树模板题,要求维护一些操作。 插入一个数,删除一个数,查询一个数的排名,查询排名一直的数,找前驱后继。 ...
分类:
其他好文 时间:
2021-05-25 17:46:12
阅读次数:
0
112. 路径总和 Difficulty: 简单 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum ,判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root = [ ...
分类:
其他好文 时间:
2021-05-25 17:43:27
阅读次数:
0
437. 路径总和 III class Solution: def pathSum(self, root: TreeNode, sum: int) -> int: dp = {} def search(root: TreeNode): if root: search(root.left) searc ...
分类:
编程语言 时间:
2021-05-24 17:23:14
阅读次数:
0