2
A
回答
10
我認爲你可以使用list.Contains(value)
,但如果你真的需要二進制搜索列表中已經有它實現的:list.BinarySearch()
。
1
通過列表來搜索最簡單的方法是Contains
:
if (myValues.Contains(x)) {
雖然這僅執行線性搜索,這意味着執行時間取決於列表的大小,並且如果該項目被發現在列表的開頭或結尾。
真正的二進制搜索可以用BinarySearch
完成。爲了使二進制搜索工作,元素應該實現它自己的比較方法(實現IComparable<T>
),或者使用比較器提供搜索。
if (myValues.BinarySarch(x)) {
+0
列表<包含()是一個線性搜索以便將大於對於較大的列表(O(N二進制搜索慢得多),而不是O(日誌。 n) – 2010-03-16 14:30:17
1
有提供的二進制搜索功能:>
List<int> myList = new List<int>() {314,1592,6535};
Console.WriteLine("{0}: {1}", myList.BinarySearch(6535), myList[myList.BinarySearch(6535)]);
相關問題
- 1. 二進制搜索升序排列C++
- 2. Python - 列表的排序列表中的二進制搜索
- 3. 排序列表的鍵上的二進制搜索<K, V>
- 4. 二進制搜索按列排序的二維數組只搜索第一列
- 5. 使用二進制搜索已排序向量
- 6. 二進制搜索程序
- 7. 用二進制搜索填充列表
- 8. 二進制搜索對象列表?
- 9. 搜索二進制表
- 10. 插入排序和二進制搜索插入排序
- 11. 二進制搜索有序排列問題
- 12. 二進制搜索排序陣列在彙編語言
- 13. 在有序鏈接列表上進行二進制搜索
- 14. C++中的二進制搜索排序和索引
- 15. 二進制搜索樹內的二進制搜索樹
- 16. 使用二進制搜索(C#)搜索分類列表
- 17. 如何在降序排列的數組中進行二進制搜索?
- 18. 二進制搜索是/是二進制搜索貪婪算法?
- 19. 用於排序的修改的二進制搜索樹?
- 20. 從排序的雙向鏈表中製作二進制搜索樹
- 21. RandomAccessFile的二進制搜索
- 22. 使用冒泡排序的二進制搜索
- 23. 二進制搜索未排序數組的時間複雜度
- 24. 殘破的二進制搜索和泡泡排序
- 25. 在排序數組中的二進制搜索
- 26. 搜索排序列表?
- 27. 在二進制搜索中搜索排序數組的複雜度較低
- 28. 二進制搜索樹陣列Imp。 C++
- 29. 二進制搜索Circulary旋轉陣列
- 30. 輸出二進制搜索樹陣列
啊,如果我只是想先嚐試一下最明顯的東西,BinarySearch方法正是我一直在尋找的!謝謝! – 2010-03-16 12:45:00