| Добавление в конец | Удаление с конца | Вставка в середину | Удаление с середины | Случайный доступ | Последовательный доступ | Поиск элемента | |
| Array | O(n) | O(n) | O(n) | O(n) | O(1) | O(1) | O(n) |
| List<T> | Лучший случай: O(1); худший: O(n) | O(1) | O(n) | O(n) | O(1) | O(1) | O(n) |
| Collection<T> | Лучший случай: O(1); худший: O(n) | O(1) | O(n) | O(n) | O(1) | O(1) | O(n) |
| LinkedList<T> | O(1) | O(1) | O(1) | O(1) | O(n) | O(1) | O(n) |
| Stack<T> | Лучший случай: O(1); худший O(n) | O(1) | N/A | N/A | N/A | N/A | N/A |
| Queue<T> | Лучший случай: O(1); худший: O(n) | O(1) | N/A | N/A | N/A | N/A | N/A |
| Dictionary<K,T> | Лучший случай: O(1); худший: O(n) | O(1) | Лучший случай: O(1); худший: O(n) | O(1) | O(1) | O(1) | O(1) |
Спорт, программирование, и немного нытья, образовательные материалы, а также немного про разработку игр. :-)
среда, 17 июля 2013 г.
Коллекции в C#
В свете постов про коллекции в Java решил сделать табличку с асимптотической оценкой производительности для C#.
Таблица взята отсюда: http://xbox.create.msdn.com/downloads/?id=123&filename=DataStructures_CheatSheet.doc. Там есть еще заметки, когда что подходит, но из асимптотических оценок всё и так ясно. Практически.
Комментариев нет:
Отправить комментарий