我们往往希望双向链表的所有元素在存储器中保持紧凑,例如,在多数组表示中占用前m个下标位置。(在页式虚拟存储的计算环境下,即为这种情况)假设除指向链表本身的指针外没有其他指针指向该链表的元素,试说明如何实现过程ALLOCATE-OBJECT和FREE-OBJECT,使得该表示保持紧凑。(提示:使用栈的数组实现)
ALLOCATE-OBJECT() if free==NIL error "out of space" else x=free free=x.next return x FREE-OBJECT(x) x.next=free free=x