【Java】HashMap源代码解读
1.HashMap实现原理 数组+链表/红黑树 根据key的hash确定数组下标(桶),同一个桶中hash相同的节点(键值对)组织成链表或红黑树。 当数组元素个数超过数组大小*负载因子(默认0.75)时数组扩容(大小加倍)并重新哈希。 参考:https://blog.csdn.net/weixin_44460333/article/details/86770169 核心成员 //...
1.HashMap实现原理 数组+链表/红黑树 根据key的hash确定数组下标(桶),同一个桶中hash相同的节点(键值对)组织成链表或红黑树。 当数组元素个数超过数组大小*负载因子(默认0.75)时数组扩容(大小加倍)并重新哈希。 参考:https://blog.csdn.net/weixin_44460333/article/details/86770169 核心成员 //...
1.线程池的主要作用 不同请求之间重复利用线程,无需频繁地创建和销毁线程,降低系统开销。 控制线程数量上限,避免创建过多的线程耗尽进程内存空间,同时减少线程上下文切换次数。 2.ThreadPoolExecutor类 线程池由两个核心数据结构组成: 线程集合workers:存放执行任务的线程,是一个HashSet<Worker>。 任务等待队列wor...
模拟对象(mock object)用于在单元测试中将系统的一部分替换为虚假对象,从而方便验证这些对象如何被使用 标准库提供了unittest.mock模块,其核心是Mock, MagicMock两个类以及patch()函数 Mock类 访问Mock对象的任何属性或方法时,它都会记录访问细节(例如方法的调用实参),如果不存在则会创建;另外Mock对象是可调用的,即可以当作函数来调用,每次调...
2021年3月10日 36分钟 自我介绍、简历项目 Java虚拟机: 内存模型 GC Full GC 线程池如何实现 阻塞队列 实现细节? 线程通信 信号量 锁…… 原子性、可见性? 读取一个long是不是原子的 a=b+1 JVM如何实现 共享区域 乐观锁、悲观锁 Spring类加载机制 虚拟机何时加载类,何时卸载类 class加载到哪里 计算机网络 HTTP连接建立过程 TCP三次...
官方文档:https://docs.gitlab.com/ee/ci/index.html GitLab CI/CD是GitLab提供的持续集成/部署工具,持续集成(CI)在每次向仓库push代码、合并到主分支前时执行构建和测试脚本,持续部署(CD)在每次向主分支push代码时将应用部署到服务器 GitLab CI/CD通过仓库根目录下一个名为.gitlab-ci.yml的文件进行配置,...
官方文档: https://github.com/features/actions https://docs.github.com/en/actions 基本概念 GitHub Actions用于自动化软件开发中的任务 GitHub Actions是事件驱动的,即当指定的事件发生时(例如push, pull request等)运行一系列命令(例如构建、测试、部署等) 事...
原创工具程序,使用Graphviz将pip包的依赖关系图可视化,效果如下图所示 其中红色表示没有入边的顶点 代码如下 import subprocess import pip._internal.commands.list as list_cmd import pip._internal.commands.show as show_cmd def run(): wit...
原创工具程序,卸载指定的pip包并递归卸载其依赖包 使用方法:将以下代码保存为pip_uninst_rec.py,执行python pip_uninst_rec.py <pkg>即可 import argparse import os from collections import deque import pip._internal.commands.show as sh...
Modeling Relational Data with Graph Convolutional Networks 2018 ESWC 论文链接:https://arxiv.org/pdf/1703.06103 代码: 官方代码 https://github.com/tkipf/relational-gcn https://github.com...
官方文档:https://docs.dgl.ai/guide/minibatch.html 对于有上百万甚至上亿顶点和边的图无法使用全图训练,需要使用随机minibatch训练 邻居采样方法 在每个梯度下降步骤中,如果要计算某个顶点第L层的表示,根据消息传递,需要计算其全部或部分邻居第L-1层的表示,又需要计算这些邻居的邻居第L-2层的表示……这一过程一直持续到输入层。这一迭代过程构造了...