2017-02-25 39 views
0

我有一個複雜的List數據結構,我想填充,但我似乎不能找到一種方法來給它種子值。我如何填充這個複雜的列表?

List<Dictionary<List<int>, int>> l1 = new List<Dictionary<List<int>, int>>(); 

我想是這樣的,

l1.add((1,2,3), 6); 

我想補充數和總數的列表。

+2

使用列表作爲字典的密鑰類型罕是有道理的,因爲兩個清單完全相同的內容將不會被認爲是相同的。請多說一些關於你的實際任務是什麼以獲得一個好的答案。 – NineBerry

+0

@NineBerry即使可以使用自定義比較器創建詞典... – 2017-02-25 18:08:25

+0

基本上@NineBerry我的任務是查找數組中最大增加子序列的總和,並打印該子序列。 – user7334855

回答

0

真的不知道你爲什麼這樣做,但如果你真的要

var list = new List<Dictionary<List<int>, int>>(); 
list.Add(new Dictionary<List<int>, int> {{ new List<int> { 1, 2, 3 }, 6}}); 
+0

謝謝,這是非常需要的。 – user7334855

0

我懷疑你真的需要列表的字典的列表。不過,你可以寫一些類型的擴展方法:

public static ListHelpers 
{ 
    public void AddSum(this List<Dictionary<List<int>, int>> list, params int[] values) 
    { 
     list.Add(new Dictionary<List<int>, int> { values.ToList(), values.Sum() }); 
    } 
} 

然後使用它:

l1.AddSum(1, 2, 3);