更改

跳到导航 跳到搜索
第100行: 第100行:     
==算法==
 
==算法==
 +
[[file:Oscillator.gif|right|400px|thumb|来自2-D六角形生命游戏的48步振荡器以及2步振荡器和4步振荡器的样本(规则H:B2 / S34)]]
 
在具有未知前景的早期模式,如 R-pentomino,使世界各地的计算机程序员编写程序来跟踪生命模式的演变。 大多数早期的算法是相似的: 它们将生命模式表示为计算机内存中的二维数组。 通常使用两个数组: 一个用于保存当前生成,另一个用于计算其后续数组。 通常0和1分别代表死细胞和活细胞。 嵌套的 for 循环依次考虑当前数组的每个元素,计算每个单元格的活动邻居,以决定后续数组的相应元素是0还是1。对于下一次迭代,数组交换角色,以便上一次迭代中的后继数组成为下一次迭代中的当前数组。
 
在具有未知前景的早期模式,如 R-pentomino,使世界各地的计算机程序员编写程序来跟踪生命模式的演变。 大多数早期的算法是相似的: 它们将生命模式表示为计算机内存中的二维数组。 通常使用两个数组: 一个用于保存当前生成,另一个用于计算其后续数组。 通常0和1分别代表死细胞和活细胞。 嵌套的 for 循环依次考虑当前数组的每个元素,计算每个单元格的活动邻居,以决定后续数组的相应元素是0还是1。对于下一次迭代,数组交换角色,以便上一次迭代中的后继数组成为下一次迭代中的当前数组。
   第117行: 第118行:     
对于在非常长的时间深度探索大型模式,像 Hashlife 这样的复杂算法可能是有用的。 还有一种方法,也适用于其他细胞自动机,用任意的异步更新来实现生命游戏,同时仍然完全模仿同步游戏的行为。<ref>{{cite conference|title=Self-Reproduction in Asynchronous Cellular Automata |first=Chrystopher L. |last=Nehaniv |date=15–18 July 2002 |conference=2002 NASA/DoD Conference on Evolvable Hardware |conference-url=http://ieeexplore.ieee.org/xpl/mostRecentIssue.jsp?punumber=8000 |publisher=IEEE Computer Society Press |location=Alexandria, Virginia, USA |pages=201–209 |isbn=0-7695-1718-8 |doi=10.1109/EH.2002.1029886 }}</ref> 在 Rosetta Code 中可以找到用各种编程语言(包括 c、 c + + 、 Java 和 Python)实现基本生命游戏场景的源代码示例。<ref>{{cite web|url=http://rosettacode.org/wiki/Conway%27s_Game_of_Life|title=Conway's Game of Life}}</ref>
 
对于在非常长的时间深度探索大型模式,像 Hashlife 这样的复杂算法可能是有用的。 还有一种方法,也适用于其他细胞自动机,用任意的异步更新来实现生命游戏,同时仍然完全模仿同步游戏的行为。<ref>{{cite conference|title=Self-Reproduction in Asynchronous Cellular Automata |first=Chrystopher L. |last=Nehaniv |date=15–18 July 2002 |conference=2002 NASA/DoD Conference on Evolvable Hardware |conference-url=http://ieeexplore.ieee.org/xpl/mostRecentIssue.jsp?punumber=8000 |publisher=IEEE Computer Society Press |location=Alexandria, Virginia, USA |pages=201–209 |isbn=0-7695-1718-8 |doi=10.1109/EH.2002.1029886 }}</ref> 在 Rosetta Code 中可以找到用各种编程语言(包括 c、 c + + 、 Java 和 Python)实现基本生命游戏场景的源代码示例。<ref>{{cite web|url=http://rosettacode.org/wiki/Conway%27s_Game_of_Life|title=Conway's Game of Life}}</ref>
      
==代码实现==
 
==代码实现==
7,129

个编辑

导航菜单