作者bens951 (Ben)
看板C_Sharp
標題[問題] dictionary用法
時間Sat Dec 5 00:07:28 2009
請問我如果想存一個矩陣
假設矩陣是
|1 1 0|
|0 0 0|
|1 0 1|
那我宣告
Dictionary<int, Dictionary<int, int>> matrix = new Dictionary<int,
Dictionary<int, int>>();
Dictionary<int, int> col = new Dictionary<int, int>();
先將每一行存入col,再存入matrix
col.Clear();
col.Add(1, 1);
col.Add(3, 1);
matrix.Add(1, col);
e_col.Clear();
e_col.Add(1, 1);
evaluation.Add(2, e_col);
e_col.Clear();
e_col.Add(3, 1);
evaluation.Add(3, e_col);
for (int i = 1; i <= 3; i++)
{
for (int j = 1; j <= 3; j++)
{
if (matrix.ContainsKey(i))
{
if (matrix[i].ContainsKey(j))
{
Console.WriteLine(matrix[i][j]);
}
}
}
}
但輸出好像不是我想的這樣,請問各位我哪裡做錯了?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.245.197
1F:→ a761007:dictionary不是這樣用的= = 12/05 10:45
2F:→ a761007:他就如其名 一個key對應到某個東東 = hash table一樣 12/05 10:47
3F:→ bens951:我的想法是想說建立兩層的DICTIONARY然後KEY代表哪一列哪 12/05 13:40
4F:→ bens951:一行,VALUE代表矩陣裡的值,試問這樣是否可做到 12/05 13:41
5F:→ a761007:那就是要這樣dictionary<int,dictionary<int,int>> xxx; 12/05 17:08
6F:→ a761007:你是怎樣不是你想要的結果? 是0沒印出來? 你要自己給值喔 12/05 17:15