似乎没有Sort方法啊
那怎么对其排序啊?不是使用SortedDictionary或SortedList

解决方案 »

  1.   

    Dictionary<TKey,TValue>类是无序的...而且不能排序...不然还要SortedDictionary<TKey,TValue>干吗?原因...Dictionary<TKey,TValue>是在Hashtable基础上实现的...
      

  2.   

    不然还要SortedDictionary <TKey,TValue> 干吗?这种说法不成立吧?如果你用过C++的STL,就应该知道,对于大量数据
    用vector添加,然后再排序比直接用排序的集合快得多但问题是,C++中有专门排序的算法(不是vector的排序算法,而是专门有个类)不知C#中有没有
    另外:
    Dictionary.System.Collections.ICollection.CopyTo 方法
    怎么用?
    这种接口方法是怎么用的啊?
      

  3.   

    用vector添加,然后再排序比直接用排序的集合快得多
    ===============
    你这种简单比较没有任何意义。使用排序集合,不论加入还是删除元素,集合都还是有序的,这自然要牺牲一些效率。而使用vector,每次都要手工的在排序,不知道这个效率这么差有什么可比性。至于你对排序集合的担忧,我的感觉是你似乎很在意第一次初始化的时候加入一些元素可能消耗的时间,但是相对于你后期得到的好处,这点损失不算很大。选择数据结构也是一门权衡的艺术。
      

  4.   

    理论上说先排序再加和边加边排序的时间复杂度是一样的,都是O(nlogn)
    用IComparer实现自己的排序算法
      

  5.   

    1楼是对的,hashtable等字典类不适合做排序,排序要在外部做。