貪吃蛇*要點分析:
*1)數據結構:matrix[][]用來存儲地圖上面的信息,如果什么也沒有設置為false,
* 如果有食物或蛇,設置為true;nodeArray,一個LinkedList,用來保存蛇的每
* 一節;food用來保存食物的位置;而Node類是保存每個位置的信息。
*2)重要函數:
* changeDirection(int newDirection) ,用來改變蛇前進的方向,而且只是
* 保存頭部的前進方向,因為其他的前進方向已經用位置來指明了。 其中newDirection
* 必須和原來的direction不是相反方向,所以相反方向的值用了同樣的奇偶性。在測試
* 的時候使用了direction%2!=newDirection%2 進行判斷。
* moveOn(),用來更新蛇的位置,對于當前方向,把頭部位置進行相應改變。如果越界,
* 結束;否則,檢測是否遇到食物(加頭部)或身體(結束);如果什么都沒有,加上頭部,
* 去掉尾部。由于用了LinkedList數據結構,省去了相當多的麻煩。
標簽:
matrix
貪吃蛇
分
數據結構
上傳時間:
2014-06-14
上傳用戶:cjf0304