今天时间本来是很充裕的,毕竟不考试留出了一天的时间进行整理,直到我发现我打完替罪羊树编译报错一大堆(往上滑都要十多秒的那种),还没有调试就已经10点多快十一点的那一刻......郭大佬还是你郭大佬,后来我问他他说这道题他就写了一个多不到两个小时就过了......而我直到现在都还没调完,上午写完后心态 ...
分类:
其他好文 时间:
2020-06-27 19:58:42
阅读次数:
58
内存分析: 1、通过 ps -aux(或-elf) | grep java(或shua-xiao)获取进程PID 2、通过 jmap -histo <pid> 查看堆内存中存活的对象 按照对象所占内存大小排序,显示了存活对象的实例数、所占内存、类名。 3、进一步通过jmap获取dump文件,也可以设 ...
分类:
其他好文 时间:
2020-06-27 18:36:16
阅读次数:
107
先找出$N_A簇,N_B簇,N_C簇$,先对$N_A簇$:是单产生式的 将来会因为替换而消除;不是单产生式的 直接放进新的集合 同理对$N_B簇,N_C簇$也是一样(这样一般得到三个"堆") 确实没了单产生式。 CFG的化简 建议做的过程: 消除$\epsilon$ 产生式 消除单产生式 消除无用符 ...
分类:
编程语言 时间:
2020-06-27 17:29:44
阅读次数:
125
node使用V8作为javaScript脚本引擎 v8的内存限制和对象分配 限制:64为大约1.4G,32位大约0.7Gv8中所有javascript对象都是通过堆内存进行分配的。内存查看命令process.memoryUsage() 为何要内存限制 表层原因为v8最初为浏览器设计,不太可能遇到大量 ...
分类:
Web程序 时间:
2020-06-27 16:18:51
阅读次数:
61
农夫要修理牧场的一段栅栏,他测量了栅栏,发现需要N块木头,每块木头长度为整数L?i??个长度单位,于是他购买了一条很长的、能锯成N块的木头,即该木头的长度是L?i??的总和。但是农夫自己没有锯子,请人锯木的酬金跟这段木头的长度成正比。为简单起见,不妨就设酬金等于所锯木头的长度。例如,要将长度为20的 ...
分类:
其他好文 时间:
2020-06-27 15:53:39
阅读次数:
66
CLR GC是一种引用跟踪算法,大致步骤如下: 1、暂停进程中所有的线程; 2、标记阶段,遍历堆中的所有对象,标记为删除,然后检查所有活动根,如果有引用对象,就标记那个对象可达,否则不可达; 3、GC压缩阶段,对堆中可达对象压缩,使占用连续的内存; GC是基于代的垃圾回收算法,对象越新,生存期越短, ...
分类:
其他好文 时间:
2020-06-27 14:45:03
阅读次数:
62
介绍 treap是tree和heap的组合词,说明这种数据结构有树的特点又有堆的特点。本质是一颗二叉搜索树。 treap的结点除了key关键字外还有个priority关键字。treap除了要保证key满足二叉搜索树性质,还要保证当前priority大于等于两个子节点的priority(即堆的性质)。 ...
分类:
其他好文 时间:
2020-06-27 13:10:38
阅读次数:
52
一、值类型 VS 引用类型 值类型 引用类型 值直接存储在栈中 值存储在堆中,再将堆的地址存到栈中 number, string, boolean, undefined, symbol object, array, null 变量之间赋值 a = b,是指直接将栈中变量a的值复制到变量b的栈空间里面 ...
分类:
编程语言 时间:
2020-06-27 09:49:29
阅读次数:
62
一、什么是堆? 维基百科的解释是:堆是一种特别的树状数据结构,它需要满足任意的子节点必须都大于等于(最大堆)或者小于等于(最小堆)其父节点。 二、堆排序 堆排序是通过二叉堆数据结构实现,二叉堆满足一下两个特性: 1、满足对的基本特性 2、完全二叉树,除了最底层外,其它层都已填充满,且是从左到右填充。 ...
分类:
编程语言 时间:
2020-06-27 09:18:07
阅读次数:
80
大部分这种问题都能够解决,在文章的最后,提到了一种特殊情况,就是父子进程中的端口占用情况。父进程监听一个端口后,fork出一个子进程,然后kill掉父进程,再重启父进程,这个时候提示端口占用,用netstat查看,子进程占用了父进程监听的端口。 原理其实很简单,子进程在fork出来的时候,使用了写时 ...
分类:
系统相关 时间:
2020-06-27 00:36:08
阅读次数:
80