2010-11-12 62 views
1

夥計們,搜索排序不等式雙打.NET

考慮(在列表<牛逼>,排序列表< T,K >等可能)什麼是去了解評估的最佳方法一組分類值不等式(大於,小於,大於或等於,小於或等於給定值)?可以使用任何標準的.net類型?或者很容易編碼?任何指針都非常感謝。

編輯 - 當然我試圖儘可能快地做到這一點。需要高度表現

+1

這個問題沒有意義。 – jason 2010-11-12 17:46:00

+0

怎麼這樣?我認爲它非常簡單。我有一個排序的雙打名單。我想查找列表中所有大於給定值的值,例如10。一種方法是遍歷整個列表。但它的排序。所以我應該能夠做得更快。 – SFun28 2010-11-12 17:49:16

+0

你爲什麼不用linq查詢集合? – 2010-11-12 17:50:13

回答

2

如果您的意思是C++ map<>上的舊功能lower_bound/upper_bound,AFAIK在C#中沒有任何內置功能。
List<T>有一個BinarySearch方法實現,但它只適用於精確匹配。

無論如何,你可以很容易地實現它自己,使用代碼在這個問題作爲一個例子peraphs:
Is there a Lower Bound function on a SortedList<K ,V>?

+0

我認爲這會工作!一旦實施,我會回覆。感謝指針! – SFun28 2010-11-12 18:02:52

+0

效果很好。非常感謝指針。 – SFun28 2010-11-13 04:01:36