Graph Theory

1. 基本概念

极:其真子集都不满足性质

最:极中包含数目最大

点覆盖、极小点覆盖 minimal vertex covering

边覆盖、极小边覆盖 minimum edge covering

独立集、极大独立集 maximum independent set

团、极大团 maximal clique

边独立集、极大边独立集 maximal edge independent set

边独立集=匹配

支配集、极小支配集 minimal dominating set

边支配集、极小边支配集 minimum edge dominating set

最小路径覆盖 path covering

阅读全文〉

Deep Learning Book Notes

Another way to think the matrix mulitply

Usually, we think the matrxi multiply as follows: \[ Ax = b = (A_{1,:}b_1,A_{2,:}b_2,...,A_{n,:}b_n)^T \] Also, we can get the result by : \[ Ax = b = \Sigma_i^n (x_iA_{:,i}) \]

阅读全文〉

Java 线程

我们知道,线程是比进程更轻量级的调度执行单位,线程的引入,可以把一个进程的资源分配执行调度分开,各个线程既可以共享进程资源(内存地址、文件I/O等),又可以独立调度(线程是CPU调度的基本单位)。

阅读全文〉

Class Loading

JVM把class文件加载的内存,并对数据进行校验、转换解析和初始化,最终形成JVM可以直接使用的Java类型的过程就是加载机制。

与那些在编译时需要进行连接工作的语言不同,在java语言里,类型的加载、连接和初始化过程都是在程序运行期间完成的。

阅读全文〉

Class File

实现语言无关性和平台无关性的基础是虚拟机和字节码的存储格式,Java 虚拟机不和包括Java在内的任何语言把您堕过,它只与“Class”这种特定的二进制文件格式所关联,Class文件中包含了Java虚拟机指令集和符号表以及若干其他辅助信息。

阅读全文〉

javaGC

根据Java内存运行时区域的划分,我们知道程序计数器、虚拟机栈和本地方法栈随着线程生成和回收,所以垃圾回收不需要考虑这部分,主要考虑java堆。

阅读全文〉

JVM Notes

Java 技术体系包括以下几个组成部分:

  • Java programming language
  • Java Virtural Machine
  • Class files
  • Java api
  • Third-party Java library
阅读全文〉

Crawler For LeetCode

This a very simple tutorial for python crawler written with Requests and BeautifulSoup, the crawler is used to grab the leetcode subjects and your ac solution codes, better reading for fresh hands.

阅读全文〉