這裏是一個演示圖像:最好的算法,模擬塊掉落
有與它的一些隨機的紅色塊8×8塊。當用戶選擇它們時,它們上面的所有塊都會掉落。我想找到一個最簡單的方法來模擬這種複雜性。
for (int i = 0; i < 8; i++)
for (int j = 0; j < 8; j++) {
if (currentBlock == blank) {
while((currentBlock.pos.x - 8) >= 0) {
aboveBlock = (currentBlock.pos.x - 8);
replace(currentBlock,aboveBlock);
}
}
但我認爲這不是一個完美的算法。誰能幫我?請。非常感謝你。
請添加相關語言,因爲答案可能依賴於他們。 – 2013-05-02 08:52:40
@Koushik那麼,他正在尋找一種通用算法,僅此而已。他可以很容易地將其翻譯成他選擇的語言。如果一個答案使用了一種他不懂的語言,或者其概念沒有轉化爲他選擇的語言,那麼這將是縮小搜索範圍的時候。順便問一下,你確定這是* C *,does * C *是否允許在循環頭文件中使用變量聲明(可能不確定)? – 2013-05-02 11:00:44
@ChristianRau是c99及以上允許這種聲明。這就是爲什麼我這麼問他(以爲他可能用同樣的語言)。以及C++也是一個匹配(不知道Java),並且每個人都有可能獲得更好的解決方案,所以爲什麼建議,也有更多的人可以訪問這個問題。但你是對的,他要求一個算法。如果他覺得沒有必要,我會去掉標籤。 – 2013-05-02 12:37:07