|
Реализация List<t>
|
|||
---|---|---|---|
#18+
гуглил, не получилось найти. Лист по идее это лист - то есть связный список. Тогда доступ по индексу занимает О(n). Но вроде как у List он занимает O(1). Получается что там устройство хитрое. Какое? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 02:16 |
|
Реализация List<t>
|
|||
---|---|---|---|
#18+
FatherSqlЛист по идее это лист - то есть связный список. Тогда доступ по индексу занимает О(n). Но вроде как у List он занимает O(1). Получается что там устройство хитрое. Какое? List<T> - это просто враппер на массивом, никакой связности там нет. Связный список - это LinkedList<T> (и в дотнете у него, кстати, нет своего собственного метода доступа по индексу). FatherSqlгуглил, не получилось найти. Лучше всего про это написано в исходниках . ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 03:02 |
|
Реализация List<t>
|
|||
---|---|---|---|
#18+
нету чтоли добавления в середину? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 08:19 |
|
Реализация List<t>
|
|||
---|---|---|---|
#18+
Добавление в середину есть, но не быстрое. Похоже правда массив тест Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
РезультатВставка в конец 0 мс Вставка предпоследним 2 мс Вставка вторым 1546 мс ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 08:46 |
|
Реализация List<t>
|
|||
---|---|---|---|
#18+
Dima TПохоже правда массив Я же дал ссылку на исходник. Вот из потрохов реализации: Код: c# 1.
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 09:06 |
|
|
start [/forum/topic.php?fid=20&msg=39222018&tid=1400642]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
47ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 293ms |
total: | 435ms |
0 / 0 |