基本回收算法 1. 引用计数(Reference Counting)比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只用收集计数为0的对象。此算法最致命的是无法处理循环引用的问题。2. 标记-清除(Mark-Sweep)此算法执行分两阶段。第一阶段...
分类:
其他好文 时间:
2014-09-09 10:36:38
阅读次数:
205
前m大的数Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 10633Accepted Submission(s): 3707Problem Desc...
分类:
其他好文 时间:
2014-09-08 10:50:06
阅读次数:
270
先看一眼JVM虚拟机运行时的内存模型:
1.方法区 Perm(永久代、非堆)
2.虚拟机栈
3.本地方法栈 (Native方法)
4.堆
5.程序计数器
1 首先的问题是:jvm如何知道那些对象需要回收 ?
目前两种标识算法、三种回收算法、两种清除算法、三种收集器
引用计数法
每个对象上都有一个引用计数,对象每被引用一次,引...
分类:
其他好文 时间:
2014-09-07 21:13:05
阅读次数:
363
题目:求一个字符串的字母集合,能组成的不同的字符串的个数。
分析:组合,计数。求出所有字母的全排列,然后除以每个字母的内部重复排列即可。
说明:(⊙_⊙)
#include
#include
#include
#include
using namespace std;
int times[26];
char str[25];
long long ans;
long long ...
分类:
其他好文 时间:
2014-09-07 18:35:55
阅读次数:
202
若干个对象共享
例如Frog对象拥有其自己的对象,并且知道他们的存活多久,因为Frog对象知道何时调用dispose()去释放其对象。然而,如果这些成员对象中存在于其他一个或多个对象共享的情况,问题将不再简单,不再能简单的调用dispose()了。在这种情况下,我们也许需要引用计数来跟踪依旧访问着共享对象的数量。
//: polymorphism/ReferenceCounting.jav...
分类:
编程语言 时间:
2014-09-07 01:07:34
阅读次数:
308
题意:给出26个大写字母的置换B,问是否存在一个置换A,使A*A=B?两个长度为N的相同循环相乘,当N为奇数时结果也是一个长度为N的循环,当N为偶数时分裂为两个长度为N/2的循环。相反,对于一个任意长度为N的奇数循环B,都能找到一个长度为N的循环A使得A*A=B,对于任意两个长度为N(N不一定为偶数...
分类:
其他好文 时间:
2014-09-07 01:00:34
阅读次数:
185
先把2*n个数字接成一个模式串P,复制两次的P为串T,然后在T上进行KMP找对P匹配的多个终点,然后就是用Polya定理了,需要求逆元。 1 #include 2 #include 3 #include 4 #include 5 #define mod 1000000007 6 using ...
分类:
其他好文 时间:
2014-09-07 00:58:34
阅读次数:
192
测周测频存在+1误差,因为在闸门开始的时间内,计数不一定就开始了。例如测频方法,在低频时相对误差就大了。虽然有高频测频低频测周的说法,但难以确定一个界限。因此要找一个一劳永逸的频率算法。...
分类:
其他好文 时间:
2014-09-06 12:29:43
阅读次数:
220
智能指针(smart pointer)是存储指向动态分配(堆)对象指针的类,用于生存期控制,能够确保自动正确的销毁动态分配的对象,防止内存泄露。它的一种通用实现技术是使用引用计数(reference count)。智能指针类将一个计数器与类指向的对象相关联,引用计数跟踪该类有多少个对象共享同一指针。...
分类:
编程语言 时间:
2014-09-06 10:53:53
阅读次数:
374
最近的数据统计项目中要用到中国地图,也就是在地图上动态的显示某个时间段某个省份地区的统计数据,我们不需要flash,仅仅依靠raphael.js以及SVG图像就可以完成地图的交互操作。在本文中,我给大家分享如何使用js来完成地图交互。先简单介绍下raphael.js,raphael.js是一个很小的...
分类:
编程语言 时间:
2014-09-06 09:40:03
阅读次数:
424