青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

brent's hut

About Conway's Game of Life Applet of Alan Hensel

[A Life pattern called the puffer train]

原文:http://www.ibiblio.org/lifepatterns/lifeapplet.html

?當前版本0.41d,更新時間2001-1-31,比0.41c版(199-1-22)上提高了些性能。新版本在計劃中,只要我的空余時間允許。
?作者:Alan Hensel,

簡介:
認識我的人都知道我為什么寫這個程序。不是為了學習Java,不是為了提高我的網站的訪問量,原因很簡單:
我收集Life patterns,而且我喜歡展示它們

當然,這些patterns中的大部分是別人發現的。沒人想要從這些Life patterns中獲利,所以據我所知這些patterns將留給后代并被賞識,就象國際象棋一樣。

請不要給我寫信說:我喜歡你的程序,卻忘記提起這些patterns。這聽起來會象是恭維集郵愛好者他的郵冊如何漂亮,對郵票卻只字不提。我的程序只是做了它們該做的事情而已。

計算機軟件和硬件只是使用者和他的數據之間的工具

這些patterns讓人贊嘆。如果不信,你可以自己去做一個試試。(我希望這個挑戰能促成一些發現。)


給那些寫Life程序的學生:
我沒有可以給你的源代碼。這里沒有你找的東西。我提供了這個程序的源代碼,但它們超出了計算機課程的范圍。它們之所以這么復雜是因為速度優化(這樣我才能運行"Breeder"或者其它更大的patterns)。當然,你可以試著讀讀源代碼,但不要強迫自己。你寫的作業應該比這個程序簡單一百倍。

給來這里學習Java applets的讀者:
這是我第一個真正意義上的applet。最好別打算把我的代碼拷貝到你的程序中。源代碼就在這一頁的底部,你可以免費下載,當然,你必須為它付出些東西。若非如此,這將會是一個讓人相當有學習動力的applet程序。

你怎么做到這么快的?

好的。沒有留心的話也許你不會發現我的程序閃電一樣的快。你也許沒看到"Warp Speed"按鈕,或者你還沒用過它,或者你覺得這無所謂。這樣的話你可以跳過這個部分。
有人問,你究竟是怎么讓它跑得這么快的?!對于這些好奇者,或者那些打算寫自己的超級細胞自動機程序的人,我會解釋的。

我傾向于把細胞自動機的優化和數據壓縮聯系起來。這也是一個簡單的概念卻需要復雜的方法。究竟什么才是最好的方案取決于數據本身。對于康威的Life,傾向于出現點狀的圖案。

對于點狀分布的世界,我們應該考慮把它分割成近似大小的塊。對于Life來說,4x4和8x8都是可取的。我選擇了8x8,因為:剛好8比特1字節,我曾經考慮過4x4,但運行起來效果不大好。

并且請注意:如果pattern長大并超過了塊的范圍,需要引入新的塊。你可以簡單的線性搜索,也可折半查找,或者維護某種映射。我的方法是哈希表。這個表只是用來查找一個新塊的鄰居。每個已存在的塊已經有它的鄰居的指針,并且會被多次使用。

必須有高效的算法來處理這些塊內部的數據,我選擇一次處理塊中的所有數據。在處理完整個塊之前不需要跳轉語句。換句話來說:所有內部循環都被unroll了,并使用了高速的查詢表。

注意:CA(細胞自動機)程序一般性的包含了兩個主要循環(加上一個顯示循環),因為CA規則要求對細胞進行并行處理,但微處理器是線性的。這意味著必須有世界的兩分拷貝,這樣創建下一代的時候本身的信息才不會被破壞掉。通常這兩個拷貝是不對稱的。這對我來說相當麻煩,因為每次我從這邊取出些東西進行優化,不得不在另一邊加點別的什么!幾乎每次,例外的情況導致了最好的優化。特別的,需要在位操作:位移,屏蔽和重組之間折中來找一個最好的查找表。

有時塊中的細胞會出現穩定的情況,不需要進一步處理。你可以把塊從隊列中移出,把它設置成“冬眠”狀態,只有當鄰近的塊影響到它。這些塊不需要占用處理器的時間,象空白的區域一樣。

檢測周期為2的振蕩器并把它移出處理隊列并不難。這對于Life程序是值得的,因為blinker是最常見的隨機的殘余物。更復雜的振蕩器相對比較少見。檢測并模擬滑翔機也是可能的。這些方面的優化會得到遞減的效果,除非你做到極致。(如HasLife)。

同樣,死亡狀態:空的塊不必馬上釋放并從哈希表中移走。那樣會占用更多的處理器時間,尤其是當振蕩器在一定空間內移進移出的時候。僅當可用內存已經很少的時候,才從死亡隊列中移除最老的死亡的塊。

當程序快到一定程度,必須考慮刷新顯示的速度不需要超過人眼可以感知的速度,或者最少不需要超過顯示器的刷新頻率。特別是在視窗環境,顯示時間會是效率的瓶頸。


源代碼
以下是我的超級快速的Game of Life applet源代碼。
很抱歉這些不是百分百面向對象的。Game of Life并不適合面向對象技術。面向對象適用于你碰到的大多數問題,除了那些效率第一而且相當復雜的項目,康威的Game of Life正好屬于這種情況。

以下是16個源文件:

LifeButton.java
LifeFrame.java
Life.java
LifeGUI.java
LifeGen.java
LifeCell.java
LifeHash.java
LifeCoordinate.java
LifeRules.java
LoadBox.java
RuleBox.java
SpeedBox.java
OptionsBox.java
LifeQueue.java
LifeCallback.java
DescribeBox.java

posted on 2005-07-22 18:15 brent 閱讀(713) 評論(0)  編輯 收藏 引用 所屬分類: Java

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            一本久久综合亚洲鲁鲁| 国产精品毛片在线| 韩日欧美一区二区| 欧美一区二区日韩| 亚洲一区二区精品| 欧美视频日韩视频| 国产精品老牛| 欧美一区二区三区日韩视频| 亚洲一区二区三区乱码aⅴ| 欧美日韩亚洲一区二区| 亚洲美女区一区| 久久综合久久88| 久久亚洲影音av资源网| 亚洲电影在线观看| 欧美r片在线| 欧美精品日韩一区| 亚洲国产高清视频| 亚洲日本视频| 国产精品v欧美精品v日本精品动漫| 亚洲视频一起| 午夜精品福利一区二区三区av| 国产目拍亚洲精品99久久精品| 久久久免费av| 快播亚洲色图| 亚洲理论在线观看| 一区二区三区国产| 国产麻豆91精品| 久久这里只精品最新地址| 久久夜色撩人精品| 亚洲免费激情| 亚洲一区二区在线播放| 国产伦精品一区二区三区免费 | 欧美伊人久久久久久久久影院| 国产一区二区福利| 亚洲电影成人| 欧美精品日韩| 美乳少妇欧美精品| 欧美精品激情| 久久久久久久国产| 欧美精品首页| 久久久久久久久久久一区| 欧美成人免费视频| 欧美一区二区精品在线| 另类亚洲自拍| 午夜久久99| 欧美日产在线观看| 久久久噜噜噜久久狠狠50岁| 欧美区日韩区| 老司机免费视频一区二区| 欧美日韩三区四区| 美女日韩欧美| 欧美精品午夜| 欧美xx视频| 国产视频不卡| 亚洲伊人伊色伊影伊综合网| 亚洲三级毛片| 久久人人爽人人| 久久国产视频网| 国产精品美女久久久浪潮软件| 亚洲国产日韩一区二区| 国产精品嫩草99av在线| 亚洲国产99精品国自产| 国产综合自拍| 欧美一区二区在线看| 一本色道久久综合精品竹菊| 久久综合色天天久久综合图片| 欧美在线日韩| 国产精品一区二区在线观看| 欧美第一黄色网| 亚洲大片av| 久久久久久久综合狠狠综合| 久久av红桃一区二区小说| 欧美国产视频日韩| 欧美成人精品一区二区三区| 韩国欧美国产1区| 久久精品99国产精品日本 | 欧美巨乳在线| 亚洲三级影片| 一本色道婷婷久久欧美| 久久国产视频网| 久久久久久免费| 一区二区视频免费在线观看| 欧美亚洲在线观看| 久久精品国产第一区二区三区最新章节 | 日韩一区二区精品视频| 欧美美女喷水视频| 在线综合亚洲欧美在线视频| 欧美亚洲综合另类| **性色生活片久久毛片| 欧美国产一区二区在线观看 | 亚洲欧美日韩专区| 卡通动漫国产精品| 99国产精品私拍| 国产欧美一区二区精品性| 久久日韩精品| 亚洲一区日韩| 免费成人av| 亚洲综合欧美日韩| 亚洲福利久久| 国产精品久在线观看| 久热国产精品视频| 亚洲社区在线观看| 欧美成在线观看| 午夜性色一区二区三区免费视频| 精品成人在线视频| 国产精品久久一卡二卡| 欧美大片网址| 欧美伊人影院| 亚洲主播在线观看| 亚洲欧洲在线播放| 久久米奇亚洲| 午夜精品久久久久久久99热浪潮| 亚洲福利视频免费观看| 国产精品视频网| 欧美激情精品久久久| 久久久久成人网| 亚洲欧美卡通另类91av| 亚洲精品免费在线| 欧美激情自拍| 老司机成人网| 久久精品一级爱片| 欧美一级视频免费在线观看| 99国产精品99久久久久久粉嫩| 狠狠入ady亚洲精品| 国产精品日产欧美久久久久| 欧美大片在线观看一区| 久久久水蜜桃| 久久人91精品久久久久久不卡| 欧美一级片一区| 亚洲欧美清纯在线制服| 亚洲在线观看| 亚洲午夜极品| 亚洲一区二区三区精品动漫| 日韩午夜精品视频| 亚洲靠逼com| 日韩视频不卡中文| 99精品欧美一区二区蜜桃免费| 亚洲人成啪啪网站| 亚洲精品小视频| 亚洲精品综合精品自拍| 亚洲人成网站色ww在线| 亚洲人久久久| 在线视频中文亚洲| 一区二区三区四区五区在线 | 亚洲第一二三四五区| 欧美大片在线观看一区| 欧美国产欧美综合| 亚洲精品国产精品国自产观看浪潮| 亚洲高清久久网| 亚洲国产精品久久久久秋霞蜜臀| 亚洲国产视频一区| 日韩视频在线一区二区| 99精品国产一区二区青青牛奶| 在线视频日韩| 中文欧美字幕免费| 国产丝袜一区二区| 精品福利av| 亚洲国产小视频| 一区二区三区国产盗摄| 亚洲一级在线观看| 欧美影院在线| 欧美77777| 亚洲免费不卡| 欧美亚洲尤物久久| 免费h精品视频在线播放| 欧美日韩高清一区| 国产精品午夜视频| 在线免费不卡视频| 亚洲小说欧美另类婷婷| 久久久91精品国产一区二区精品| 欧美成人亚洲成人| 一区二区精品在线| 久久精品国产精品亚洲综合| 欧美精品观看| 国产日韩在线亚洲字幕中文| 亚洲国产成人一区| 香蕉久久精品日日躁夜夜躁| 老司机67194精品线观看| 亚洲免费观看在线视频| 欧美一区二区在线免费观看| 欧美激情在线免费观看| 国产日韩欧美一区二区三区在线观看| 有码中文亚洲精品| 亚洲欧美另类久久久精品2019| 免费短视频成人日韩| 亚洲天堂久久| 欧美精品日本| 尤妮丝一区二区裸体视频| 亚洲午夜羞羞片| 亚洲福利av| 久久国产精品黑丝| 国产精品国码视频| 亚洲伦伦在线| 蜜臀99久久精品久久久久久软件| 亚洲午夜精品视频| 欧美日本一道本| 亚洲欧洲日本mm| 两个人的视频www国产精品| 亚洲一区在线观看视频| 欧美区一区二|