1条回答 默认 最新
bobhuang 2019-11-07 16:05关注典型的循环数组用法。
用普通的数组计算和访问,如果蛇身长度是n,每次移动要把n个数据都复制一遍。
比如body[0]-body[n-1]表示蛇身的位置, 则计算下一步位置时,
body[0] = body[1]
body[1] = body[2]
.......
body[n-1] = 新的蛇头位置
以此类推。而用循环数组,只需要改变head和tail指向的位置,并更新蛇头body[head]的位置信息,不用复制剩余的位置数据。
使用的时候,普通数组从位置0开始读取,而循环数组从位置head开始读取,遇到数组边界(0)的下一个,就循环到数组的尾部(图例中的39).解决 无用评论 打赏 举报

