SortedDictionary如何按VALUE排序?我找了很多都找不到,或者使用ARRAY转换存再排序,有没有优雅的方法?
SortedDictionary如何按VALUE排序?我找了很多都找不到,或者使用ARRAY转换存再排序,有没有优雅的方法?
它的CONSTRUCTOR也只能提供一个TKEY的比较过程进去,但我要按VALUE,不是按KEY
[解决办法]
颠倒一下吧
SortedDictionary<int, string> sortedDictionary = new SortedDictionary<int, string>();sortedDictionary.Add(3, "第三");sortedDictionary.Add(1, "第一");sortedDictionary.Add(2, "第二");foreach (int vKey in sortedDictionary.Keys) Console.WriteLine(sortedDictionary[vKey]);
[解决办法]
排序是很快的,因为内核采用的是Quick(快速排序法)
时间会慢在数据的复制(CopyTo)和分配上(new)
记录在千条这个级别一般感觉不大
上万条后最好用数据库来处理