我正在尝试在我的vb.net中创建以下矩阵,因此在处理过程中我可以获得字母表的匹配分数,例如: A和N的匹配是什么?我将查看我的内置矩阵并返回-2 同样,P和L的匹配是什么?我将查看我的内置矩阵并返回-3
请建议我如何去做,我试图使用这样的嵌套字典:
Dim myNestedDictionary As New Dictionary(Of String, Dictionary(Of String, Integer))()
Dim lTempDict As New Dictionary(Of String, Integer)
lTempDict.Add("A", 4)
myNestedDictionary.Add("A", lTempDict)
另一种方法是从基于文本的文件中读取Matrix,然后填充二维数组。
感谢。
答案 0 :(得分:5)
我认为使用带有双字符键的非嵌套字典会更简单。
myDictionary.add("AA", 4)
答案 1 :(得分:3)
使用二维数组并为您的字母创建一个映射作为枚举,该枚举也将作为数组的索引:
public enum AlphaBet
{
A = 0,
R = 1,
...
}
// Init the array
int[][] scores = ...;
int score = scores[AlphaBet.A][AlphaBet.N]; // score = -2
答案 2 :(得分:1)
获取一个将char映射到int的字典。整数必须是连续的。然后拿2d数组,就是这样。首先你看两个字符的索引字典然后转到数组