Кнут скорее для спеца. Я оттуда использовал один алгоритм маскировки целых чисел, забыл как его сам Кнут назвал. Для псевдослучайных названий заказов в виде кодов, из которого номер заказа получить можно, но нужно знать два секретных числа. Редко, но метко, могут пригодится двоичные деревья и поиск по ним (использовал в рамках БД таблицы с большим количеством категорий, вложенных в друг друга), поиск по графам и прочая.
Проблема в том, что я пока реализую красивый алгоритм, мидл программист решит ту же задачу "в лоб". Если не быстрее. Да, его решение будет на 30-50% медленнее, но в ряде задач это тупо некритично, а где-то нивелируется процессорной мощностью, которая только растет. Эффективные алгоритмы нужны только там, где много поступающих данных, типа банковской сферы или социальных сетей.
Даже не смотря на то, что ты написал про решение "в лоб" у мидлов, мне всё равно как-то не комфортно живётся с тем, что я не могу сходу написать любой алгоритм сортировки, а не пользоваться встроенной библиотекой с каким-нибудь там .sort методом для массива. Это как уметь решать СЛАУ методом Гаусса, но не сразу вспомнить сколько будет 8*7. Не знаю почему, но у меня именно такое мнение
Кнут скорее для спеца. Я оттуда использовал один алгоритм маскировки целых чисел, забыл как его сам Кнут назвал. Для псевдослучайных названий заказов в виде кодов, из которого номер заказа получить можно, но нужно знать два секретных числа.
Редко, но метко, могут пригодится двоичные деревья и поиск по ним (использовал в рамках БД таблицы с большим количеством категорий, вложенных в друг друга), поиск по графам и прочая.
Проблема в том, что я пока реализую красивый алгоритм, мидл программист решит ту же задачу "в лоб". Если не быстрее. Да, его решение будет на 30-50% медленнее, но в ряде задач это тупо некритично, а где-то нивелируется процессорной мощностью, которая только растет. Эффективные алгоритмы нужны только там, где много поступающих данных, типа банковской сферы или социальных сетей.
Даже не смотря на то, что ты написал про решение "в лоб" у мидлов, мне всё равно как-то не комфортно живётся с тем, что я не могу сходу написать любой алгоритм сортировки, а не пользоваться встроенной библиотекой с каким-нибудь там .sort методом для массива. Это как уметь решать СЛАУ методом Гаусса, но не сразу вспомнить сколько будет 8*7. Не знаю почему, но у меня именно такое мнение
Кто у вас лучший?