SortedDictionary如何自訂排序
之前再寫 資料檢索 這堂課的作業時,碰到一個 SortedDictionary 排序上的問題,因為我在寫 反轉索引法 的過程中有使用到這個集合,其中Key的部分我是用來存放 TF-IDF 演算法求出來的weight score,這個值我是以double的型態來存放,不過因為SortedDictionary的排序方式是由小到大,也就是以升冪排序的方式幫你排序好了,但是我希望它能夠由大到小排序,因為作業的顯示結果要求weight score越高的結果要排越前面,所以我上MSDN查了一下SortedDictionary的資料後,本來看到它有一個 Reverse 的方法,不過後來研究了好久還是不會用,最後就上PTT的C_Sharp板去求助,經過Cloud大大的指導後終於解決這個問題了。    利用SortedDictionary建構式的一個多載,IComparer介面就可以實現自訂排序方式,來看看實作程式碼吧。   我們先看一下一開始SortedDictionary為我們排序的結果:    using  System;  using  System.Collections.Generic;     namespace  SortedDictionarySample  {  class  Program  {  static  void  Main( string [] args)  {  SortedDictionary< int , string > sortedDictionary = new  SortedDictionary< int , string >();     sortedDictionary.Add(5, "五" );  sortedDictionary.Add(4, "四" );  sortedDictionary.Add(6, "六" );  sortedDictionary.Add(2, "二" );  sortedDictionary.Add(8, "八" );     foreach  (KeyValuePair< int , string > kvp in  sortedDictionary)  Consol...