Войти
ФлеймФорумПрограммирование

Список модных прог в которых shared_ptr и weak_ptr и unordered_map хорошо зашли (4 стр)

Страницы: 13 4 5 617 Следующая »
#45
15:09, 19 авг. 2017

> факт наличия слабой связи подтверждаешь?
Adler, как я уже отметил выше - тут связь примерно настолько же слабая, как между яблоком и трактором. Т.е. наверное какая-то там связь реально есть, просто человеческий глаз/слух/нюх уловить эту связь не в состоянии )))

> На этом форуме никто чтоль не оптимизирует кот?
*Lain*, оптимизировать надо то, что тормозит - иначе это идиотизм, а не оптимизация. К тому же оптимизация, особенно такая жёсткая как SoA - должна быть одной из самых последних вещей, которая будет делаться в уже давно вылизанном до блеска идеальном коде...

> Сам использую по настроению.
war_zes, ты блондинкой работаешь что ли? )))


#46
16:32, 19 авг. 2017

Умные указатели нужны для контроля за временем жизни ресурса, указатель на который они принимают во владение. Пример в котором умный указатель может быть полезен: http://ideone.com/sA39NL
Попробуйте проделать то же самое с raw-указателем, чтобы увидеть разницу.

unordered_map дает ощутимый прирост в производительности там где порядок следования элементов при итерации не имеет значения, но необходима сложность доступа к эл-там O(1) вместо O(log n) предоставляемой map. Например сложность алгоритма в котором обращение к элементам мапа производится в цикле будет O(n*log n), в то время как с использованием unordered_map O(n).

#47
17:03, 19 авг. 2017

totoro
> unordered_map дает ощутимый прирост в производительности
Это в котором внутри связный список со всеми вытекающими?

#48
17:05, 19 авг. 2017

totoro
> unordered_map дает ощутимый прирост в производительности там где порядок
> следования элементов при итерации не имеет значения
  Если кто-то затеял какие-то итерации по мапе, да ещё и хочет, чтобы элементы следовали в каком-то порядке, то следует поставить вопрос о профпригодности этого человека или даже проверить его психическое здоровье, потому что в девяти случаях из десяти это делают тогда, когда на самом деле не нужно. Для хранения отсортированных значений существуют линейные коллекции и сортировка. Есть сортировки, которые делают минимум работы если елементы почти упорядочены, что хорошо подходит для случая, когданужно добавить один элемент и снова отсортировать коллекцию. А мапы нужны для поиска в них, а не для итераций. Использовать мапы для сортировки это ну примерно как использовать вектор вместо unique_ptr.

1 frag / 2 deaths
> Это в котором внутри связный список со всеми вытекающими?
  Это где хэш-таблица, которую можно реализовать по разному. Ну и дерево ничем не лучше связного списка. Список он хотя бы более дружелюбен к бранч-предиктору (естественно в применении к случаю, когда оно нужно только для итераций) и списки там не везде, а только для цепочек коллизий.

#49
17:31, 19 авг. 2017

totoro
> Умные указатели нужны для контроля за временем жизни ресурса, указатель на
> который они принимают во владение.

Копепетан очевидность как бе  выпал в осадок.

+ Показать
#50
17:33, 19 авг. 2017

ГОРШОЧЕК НЕ ВАРИ!!!

#51
18:26, 19 авг. 2017

Zefick
> Есть сортировки, которые делают минимум работы если елементы почти упорядочены,
> что хорошо подходит для случая, когданужно добавить один элемент и снова
> отсортировать коллекцию.

Даже в лучшем случае сортировка займёт O(N). Вставка в мапу будет O(Log(N)). Профит можно будет получить разве что на совсем мелких коллекциях, т. к. у мапы константа больше.

#52
22:00, 19 авг. 2017

slava_mib
> оптимизировать надо то, что тормозит - иначе это идиотизм, а не оптимизация
+100

#53
22:22, 19 авг. 2017

В этом треде много "профессианалов", которые пишут тормозной код. А все почему, потому что берут JVM и .Net тормозные виртуальные машины. Ооп тоже для школьников. чуваки обычно заводят целые массивы объектов с виртуальными функциями и давай их в куче вложенных циклов обробатывать. да еще и кода стопитсот напечатают бесполезного

#54
0:14, 20 авг. 2017

*Lain*
> В этом треде много "профессианалов", которые пишут тормозной код. А все почему,
> потому что берут JVM и .Net тормозные виртуальные машины. Ооп тоже для
> школьников. чуваки обычно заводят целые массивы объектов с виртуальными
> функциями и давай их в куче вложенных циклов обробатывать. да еще и кода
> стопитсот напечатают бесполезного

фу, какой банальный

#55
0:32, 20 авг. 2017

Kartonagnick
ГОРШОЧЕК НЕ ВАРИ!!!

#56
14:59, 20 авг. 2017

Zefick
> Если кто-то затеял какие-то итерации по мапе, да ещё и хочет, чтобы элементы следовали в каком-то порядке, то следует поставить вопрос о профпригодности этого человека или даже проверить его психическое здоровье, потому что в девяти случаях из десяти это делают тогда, когда на самом деле не нужно. Для хранения отсортированных значений существуют линейные коллекции и сортировка. Есть сортировки, которые делают минимум работы если елементы почти упорядочены, что хорошо подходит для случая, когданужно добавить один элемент и снова отсортировать коллекцию. А мапы нужны для поиска в них, а не для итераций. Использовать мапы для сортировки это ну примерно как использовать вектор вместо unique_ptr.
Кстааати.

#57
15:35, 20 авг. 2017

FordPerfect

Он наверное имел в виду не массив, а список.

#58
15:55, 20 авг. 2017

Ghost2
Он?
Честно не понял.

#59
16:05, 20 авг. 2017

FordPerfect

У меня почему-то эта ссылка открылась на телефоне со второго сообщения:

мап - массив с пропусками. имхо создан для экономии памяти, а все остальное приложилось.

Страницы: 13 4 5 617 Следующая »
ФлеймФорумПрограммирование

Тема в архиве.