请教数据结构高手,高分相赠!!
我做一个象棋软件
要用开局库
我的想法是这样的
建立一个三维数组chessboard[15][10][9],意思是表示棋盘上任何一个位置可能有任何一个棋子的状态,15表示14种棋子和没有棋子的某一位置的15种可能状态,10和9表示棋盘的行和列数,也就是的定义了所有的位置点;将数组中每一个元素填满互相完全不一样的数据,任意一个盘面上局势的状态用各元素之和chesstotal描述(当然没有棋子的位置对应的元素不加在里面),请问怎么样确定最少需要多少位的数据,才能保障任意一个盘面对应的chesstotal的值不一样?怎么确定这些数据,不会是硬往上凑吧?
另外一个问题:用以上的chesstotal最为关键字索引,后面记录着当前局面下做好地应着,对于有多种应法的情况怎么处理呢?
需要一个随机数来确定选择哪一种招法,但在开局库中怎么样存储呢?
因为每一个局面的应法多少是不一定的,也就是每一个chesstotal对应的记录长度是不一样,请高手指教效率最高的处理方法!!
谢谢了
分不够再加!