Почему ожидаемо линейный алгоритм может проиграть сортировке?
На примере дедупликации разберём, как кэши, аллокации, распределение данных и выбранное планировщиком ядро меняют победителя. Один C++20-код испытаем на x86-64, Apple Silicon и мобильных ARM64-устройствах.
Для всех
Средний
В программирование вошёл через ICPC.
Был серьёзным C++‑разработчиком: знал, что такое память, потоки и undefined behavior; умел договариваться с компилятором на почти человеческом языке.
Со временем решил, что жизнь слишком коротка, чтобы только гоняться за segfault‑ами, и ушёл в мир iOS, где профессионально красит кнопки и шлифует пользовательский опыт.