C 加威克';处理堆栈溢出的s算法?

C 加威克';处理堆栈溢出的s算法?,c,algorithm,C,Algorithm,Garwick算法是一种处理堆栈溢出的算法 有人对如何修改Garwick处理堆栈溢出的算法有想法吗? 问题是提出一种加速加威克算法的算法。在这种情况下,它意味着一种算法,其结果是重新分配的次数更少,移动的单元格数量更少 Standish(数据结构、算法和软件原理书)提供了一个表格,该表格给出了处理10个堆栈和1000个元素时,重新分配和移动单元的平均数量-元素通过均匀分布和(1/2)^(-n),n=1…10的偏态分布进行添加 一个建议的解决方案是让偶数堆栈在左方向上增长,而奇数堆栈在右方向上增长

Garwick算法是一种处理堆栈溢出的算法

有人对如何修改Garwick处理堆栈溢出的算法有想法吗? 问题是提出一种加速加威克算法的算法。在这种情况下,它意味着一种算法,其结果是重新分配的次数更少,移动的单元格数量更少

Standish(数据结构、算法和软件原理书)提供了一个表格,该表格给出了处理10个堆栈和1000个元素时,重新分配和移动单元的平均数量-元素通过均匀分布和(1/2)^(-n),n=1…10的偏态分布进行添加

一个建议的解决方案是让偶数堆栈在左方向上增长,而奇数堆栈在右方向上增长——我认为这会产生更好的结果


有人使用过比Garwick算法更快的交叉算法吗?

左方向增长的偶数堆栈,右方向增长的奇数堆栈总体上提供了更好的结果

对于那些不知道Garwick算法是什么的人,请参见《编译器中的数据存储》。Bit第4卷第3期(1964),137-140(DOI:10.1007/BF01956024)如果这不是您所指的算法,您需要更具体;这就是谷歌学者搜索的全部内容。我找不到Standish的文章——引文,请看这本书