2016-01-28 60 views
0

所以,我正在研究一個單詞發現風格的遊戲,而我現在如何生成新的字母只是不削減它。我的意思是它的作品,但它似乎產生不經常使用的字母(見https://en.wikipedia.org/wiki/Letter_frequency)或生成太多的1個字母。字找風格遊戲,分佈式字母生成算法

現在我只是使用一個基於隨機數的模型,並根據它來選擇,它再次起作用但並不理想。

所以我有2箱子

1)在啓動時,就會產生板與被隨機生成的25個字母。

2)當一個字被發現,我刪除從董事會的信,併產生新的字母來代替它們

是否有可能基於https://en.wikipedia.org/wiki/Letter_frequency產生最文字的字母已知算法?

我可以對現有字母做一些循環,並做很多循環,字母計數。並基於此確定要生成的字母。

我寧願(在這一點上卻沒有必要的)一些不那麼瘋狂,也能夠有可能將其用於其他語言

任何指針將不勝感激!

+0

我已經理解了這兩種情況,但是到底你想要做什麼? –

+0

好吧,bascially試圖創建某種算法,將確定接下來要抓的字母,它是否需要是元音,普通字母或Z,V,W等字母。對不起,我應該更加清楚。 – Sherdog

+0

生成新字母后,您的目標是什麼?你知道可能的單詞數量儘可能大嗎?如果不是,究竟是什麼? – svs

回答

1

您可以根據頻率創建一個字母池,例如Scrabble英文字母的98個瓷磚。

當您填充您的網格時,您從池中刪除選取的字母並將它們放在網格中。當玩家從網格中選擇一個有效的單詞時,做相反的事情:從板上取下字母並將它們放回池中。然後畫出新的字母填補空白。

如果您想用某些現有詞語預先填充網格以讓玩家開始玩,您還應該從游泳池中挑選字母。

您可以使用一個簡單的數組作爲池。當你刪除一個隨機字母時,通過把最後一個元素放在pick元素所在的位置來縮短數組。當你放回元素時,只需將它們追加到數組的末尾即可。

+0

有趣的是,我沒有想過使用Scrabble字母池,這是一個好主意。我將不得不嘗試一下,看看它是如何工作的。謝謝! – Sherdog