HashLife:压缩时间和空间的算法

时间:2024-06-04 21:50:54
【文件属性】:

文件名称:HashLife:压缩时间和空间的算法

文件大小:458KB

文件格式:ZIP

更新时间:2024-06-04 21:50:54

Java

HashLife-Tomas G.Rokicki,DDJ,2006年4月1日 压缩时间和空间的算法 通过Tomas G.Rokicki,2006年4月1日 快速执行缓慢的程序可能导致欢乐和沮丧。 但是有时,一种新方法会产生惊人的改进。 快速执行缓慢的程序可能导致欢乐和沮丧。 通常,您能做的最好的事情是做一个低级技巧,使程序速度提高一倍甚至四倍。 例如,许多读者可能已经使用位级操作实现了约翰·康威(John Conway)的“生命游戏”,从而显着提高了速度。 但是有时,将几个想法结合在一起的全新方法会带来惊人的改进。 威廉·高斯珀(William Gosper)发明了一种简单的算法“ HashLife”( ),结合了四叉树和备忘录,从而为生活游戏带来了天文学的加速。 在本文中,我将最简单的Life实现演化为该算法,解释了它的工作原理,并在某些宇宙成长为数十亿个细胞时,为数万亿个世代运行。


【文件预览】:
HashLife-master
----pdf()
--------gosper-84.pdf(430KB)
----images()
--------figure-4-0604bf4.gif(5KB)
--------figure-5-0604bf5.gif(7KB)
--------figure-2-0604bf2.gif(8KB)
--------figure-1-0604bf1.gif(8KB)
--------figure-3-0604bf3.gif(5KB)
----README.md(18KB)
----java()
--------UniverseInterface.java(550B)
--------TreeUniverse.class(1KB)
--------TreeUniverse.java(2KB)
--------UniverseInterface.class(203B)
--------TreeNode.class(2KB)
--------MemoizedTreeNode.class(789B)
--------TreeNodeBase.class(2KB)
--------MemoizedTreeUniverse.java(262B)
--------Driver.class(2KB)
--------HashLifeTreeNode.class(1KB)
--------CanonicalTreeNode.java(2KB)
--------Driver.java(3KB)
--------TreeNode.java(4KB)
--------CanonicalTreeNode.class(2KB)
--------MemoizedTreeNode.java(1KB)
--------CanonicalTreeUniverse.java(255B)
--------HashLifeTreeUniverse.class(1KB)
--------HashLifeTreeNode.java(3KB)
--------TreeNodeBase.java(4KB)
--------README(3KB)
--------CanonicalTreeUniverse.class(314B)
--------MemoizedTreeUniverse.class(311B)
--------HashLifeTreeUniverse.java(880B)

网友评论