🦥Alex Fails
Matway
Таки да. Не факт, правда, что это хорошо.
🦥Alex Fails
Vladislav
у нас даже js-макак так интервьюируют, можем чебе позволить)
Vladislav
достаточно, чтобы эти знания были критическими для моей работы
Matway
Зависит от области. Я работаю на двух работах на одинаковой должности. На одной алгоритмы не нужны никогда, на другой - каждый второй день.
Vladislav
Berkus
общее понимание надо иметь всё равно
Berkus
хотя бы отличия в space и time complexity
Vladislav
ну вот ты умеешь объяснять, как и почему вставка в вектор - именно такая по времени, как она есть?
RattenKong 🦧🐀🦍️
Знать историю алгоррттмов
Constantine
Vladislav
вот CLRS дает инструменты, чтобы такое понимание было, и как аналогические вещи в других алгоритмах понимать
Vladislav
Andrei
А average-case quicksort-а?
Крылатый
RattenKong 🦧🐀🦍️
Мне не нравится наличие значения плохо
Andrei
Срсли? Там весьма нетривиальное доказательство.
RattenKong 🦧🐀🦍️
чтобы знать когда остановиться)
Constantine
Vladislav
ответа на SO хватит на понимание одного конкретного примера (вектор), а не общего принципа
Vladislav
дискуссия интересная, но я спать - 2 часа ночи(
Vladislav
чтобы уметь в голове прикинуть время работы аналогичного алгоритма
RattenKong 🦧🐀🦍️
Так можно луучше понять что автор прав в оценке
Berkus
у кнута неплохая
Vladislav
кодерам - вообще не надо, в отличии от инженеров
Vladislav
программирование вообще не особо нужно многим
RattenKong 🦧🐀🦍️
Просто нужно понимать специфику задачт
RattenKong 🦧🐀🦍️
Вот кормена почитать, напримернапример
Vladislav
я лично - против такого широкого термина "программист". Только путаницу вносит
Constantine
Vladislav
да уже есть, де-факто
Vladislav
просто пока все по-своему эти категории называют
Andrei
Скорее всего даже наоборот. Чтобы аккуратно ответить на этот вопрос, надо посчитать матожидание выосты бинарного дерева.
Andrei
Сильно сомневаюсь, что это будет функция от log(n)
Vladislav
Constantine
Andrei
Andrei
Vladislav
https://en.wikipedia.org/wiki/Random_binary_tree#The_longest_path
Constantine
Хотя с числами каталана я нагнал, видимо. Это другое распределение жи
Andrei
Емнип Каталан — это проивзольные деревья, не только бинарные.
Vladislav
Andrei
(()()())
Andrei
отвечает вершине с тремя потомками
Constantine
Короче с деревьями никаких подводных камней никогда
Constantine
Как не генерь рандомом логарифм высоты)
Kyrylo
всем привет, пытаюсь портировать прогу с мака на линукс, не совсем корректно работает, есть подозрения в этой штуке: template< class T > T& getData( T* ) { return *(T*)(&m_data); }, пробовал через reinterpret_cast, не помогло. как еще можно это преобразовать?
Andrei
именно бинарные
Каталан бинарные с точностью до изоморфизма. Так что там гораздо меньше деревьев большой высоты.
RattenKong 🦧🐀🦍️
RattenKong 🦧🐀🦍️
Ноэто маловероятно на случайных
Andrei
Andrei
Там правда не всё так просто.
Andrei
Вы не можете гарантировать что случайный выбор на каждом подотрезке pivot-а в среднем действительно даёт нужную сложность. Все доказательства которые мне известны привлекают немного из теорвера.
Kyrylo
в ран-тайме, тесты не так проходят
Kyrylo
пробовал на разных gcc & clang, результат одинаковый
Andrei
Berkus
Berkus
Что именноты пытаешься сделать и как тестируешь
Kyrylo
оптимизация -O0, можно попробовать отдельно просмотреть, просто контекст достаточно большой(
в gdb просматриваю, есть негативные значения, которых быть не должно, подозрение на плохое кастование
пока попробую действительно отдельные части прогнать, сложно все нюансы вам вытащить, чтобы понятнее было)
Berkus
Ну вообще это должен быть реинтерпрет каст если ты эту область памяти пытаешься считать другим типом
Berkus
https://github.com/berkus/libarsenal/blob/work/include/arsenal/byte_array.h я сделал возврат пойнтера который потом можно дерефнуть если надо см. as()
Kyrylo
ок, спасибо
Berkus
Валгринд не нужен, есть asan
🐙 Antony
+1. valgrind хуже ловит, чем asan
Berkus
Tsan, ubsan
🐙 Antony
см все санитайзеры :) Они все хороши
Berkus
С этими разберись сначала
Evgenii
🐙 Antony
но было и обратное
Давно? Я перу месяцев назад наталкивался на то, что валгринд не ловил. Версии санийтазеров и валгринда были сеженькие