private SortedDictionary<double, List<int>> list = new SortedDictionary<double, List<int>>();   
        List<int> lst =new List<int> ();
        lst.Add(5);
        lst.Add(2);
        lst.Add(3);        list.Add(11, lst);
        lst.Sort();
        lst.Reverse();        foreach (int i in list[11])
        {
            Response.Write(i.ToString() + "<br>");
        }

解决方案 »

  1.   

    不用key获得SortedDictionary中的value.可能我写的不够清楚。
    private SortedDictionary <double,int> list = new SortedDictionary<double,int >();   
    我想利用SortedDictionary的插入排序功能,所以我建立了这样一个list,根据key来排序。   
    因为不知道经过若干插入操作后的key,那么我应该怎样获得key最大的value,key第二大的value...。
      

  2.   

    可以把key取出来放到List<double>里面,这样行不?
    List<double> ll = new List<double>();
            foreach (double d in list.Keys)
            {
                ll.Add(d);
            }
      

  3.   

    不要foreach,我要按大小取,取出第n大的一个,能实现吗
      

  4.   

    我是先把那些key放在List <double >里面,然后排序的,这样就可以按照index来取了
    foreach (double d in list.Keys)
            {
                ll.Add(d);
            }
            ll.Sort();
            ll.Reverse();
    int index=1;
    ll[index-1]是最大的一个
      

  5.   

    你这么做,就把我得初衷改变了,Sort很花时间的。没必要每次都Sort。
    每添加一个<key,value>,我就要知道最大的是哪个。