题目1:
问题: 中国象棋,双方都只剩下各自的将/帅,求所有双方所有可能的棋子位置,要求只可以使用一个变量。
解法1:用一个变量存储两个棋子的位置信息,使用位操作来对两个位置进行操作。
解法2:利用一个9*9=81长度的数组来存储两个位置信息。则第i个值对应的两个位置分别是int(i/9), i%9
解法3:利用一个stuct类型将两个unsigned char组合在一起。
总结:当对内存的使用有限制时,可以考虑上诉3种方法来实现算法。
题目1:
问题: 中国象棋,双方都只剩下各自的将/帅,求所有双方所有可能的棋子位置,要求只可以使用一个变量。
解法1:用一个变量存储两个棋子的位置信息,使用位操作来对两个位置进行操作。
解法2:利用一个9*9=81长度的数组来存储两个位置信息。则第i个值对应的两个位置分别是int(i/9), i%9
解法3:利用一个stuct类型将两个unsigned char组合在一起。
总结:当对内存的使用有限制时,可以考虑上诉3种方法来实现算法。