网上写块状链表的博文真的好水,连 oiwiki 也是这样。
所以来问以下关于内存池动态分配和回收节点的时候的原理,为什么 pool[tot--] 是分配节点,而 pool[++tot]=x 是回收节点,而且对 pool 数组的理解也不是很明确,求大佬指点,以下是这一工作的代码:
int pool[MAXN], tot;
int new_node() {
return pool[tot--];
}
void del(int x) {
pool[++tot] = x;
}
void init() {
for(int i = 1; i < MAXN; ++i) {
pool[++tot] = MAXN-i;
}
}