啊哈磊_编程从这里起步

标题: 啊哈算法解救小哈问题求助! [打印本页]

作者: kuaile1210    时间: 2014-10-30 21:33
标题: 啊哈算法解救小哈问题求助!
请问85页通过方向数组使用循环怎么获得了下一步的坐标啊?看不懂啊!

作者: rosynirvana    时间: 2014-10-30 21:33
手动列举一下坐标就明白了
假设原来的坐标是(x,y)
那么下一步的4个坐标就是(x+1, y) (x-1, y) (x, y+1) (x, y-1)
通过一组计算可以获得这4个坐标

个人认为4个坐标用数组偏移做个循环并不高明,不如手动列举出来
如果是更复杂的,例如马的8个位置,才比较合适
作者: kuaile1210    时间: 2014-10-31 21:17
rosynirvana 发表于 2014-10-30 21:33
手动列举一下坐标就明白了
假设原来的坐标是(x,y)
那么下一步的4个坐标就是(x+1, y) (x-1, y) (x, y+1) ( ...

昨天晚上临睡的时候突然一下想明白了。原来next[k][0]指的是二维数组里面的位置
作者: kuaile1210    时间: 2014-10-31 21:30
rosynirvana 发表于 2014-10-30 21:33
手动列举一下坐标就明白了
假设原来的坐标是(x,y)
那么下一步的4个坐标就是(x+1, y) (x-1, y) (x, y+1) ( ...

你说到马,原来象棋游戏的程序是这样写出来的。一下懂了。




欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/) Powered by Discuz! X3.2