本文共 1078 字,大约阅读时间需要 3 分钟。
程序的复杂度分为时间复杂度和空间复杂度,通过字面上可以看出它们的含义,下面我们主要来看一个集合的时间复杂度,这些集合基本包含了.net里的所有了,呵呵!
Data Structure | Add | Find | Delete | GetByIndex |
O(n) | O(n) | O(n) | O(1) | |
O(1) | O(n) | O(n) | O(n) | |
O(1) | O(n) | O(n) | O(1) | |
O(1) | - | O(1) | - | |
O(1) | - | O(1) | - | |
O(1) | O(1) | O(1) | - | |
Tree-based dictionary (SortedDictionary<K,T>) | O(log n) | O(log n) | O(log n) | - |
Hash table based set (HashSet<T>) | O(1) | O(1) | O(1) | - |
Tree based set (SortedSet<T>) | O(log n) | O(log n) | O(log n) | - |
Array (T[])
Linked list (LinkedList<T>)
Resizable array list (List<T>)
Stack (Stack<T>)
Queue (Queue<T>)
Hash table (Dictionary<K,T>)
Tree-based dictionary (SortedDictionary<K,T>)
Hash table based set (HashSet<T>)
Tree based set (SortedSet<T>)
本文原文由 发表自博客园,本人只是收藏之
本文章来自:http://www.cnblogs.com/gaochundong/p/3813252.html
相关参考资料:
本文转自博客园张占岭(仓储大叔)的博客,原文链接:,如需转载请自行联系原博主。