Size: a a a

2020 May 19

LL

Lama Lover in pro.elixir
Например два списка длины N состоящие из единиц
источник

Е

Евгений in pro.elixir
Lama Lover
Неправда, например лексикографическое сравнение списков
Худший случай в моём варианте - пройти список один раз
Худший случай в твоём - пройти список два раза
непонимаю причем здесь список, ну да ладно, давайте вернемся к стилю, интерфейс компаратора сильно зависит от задачи, в плюсах в красно-черных деревьях и функциях сортировки именно такой компаратор возвращающий булевый тип
источник

Е

Евгений in pro.elixir
возможно в эликсире и стоит переделать на :gt, :lt и :eq, не буду спорить
источник

LL

Lama Lover in pro.elixir
Евгений
непонимаю причем здесь список, ну да ладно, давайте вернемся к стилю, интерфейс компаратора сильно зависит от задачи, в плюсах в красно-черных деревьях и функциях сортировки именно такой компаратор возвращающий булевый тип
Ну я рад за плюсы
источник

LL

Lama Lover in pro.elixir
Евгений
непонимаю причем здесь список, ну да ладно, давайте вернемся к стилю, интерфейс компаратора сильно зависит от задачи, в плюсах в красно-черных деревьях и функциях сортировки именно такой компаратор возвращающий булевый тип
Я же за тебя прямо сейчас посчитал количество операций, друг
источник

Е

Евгений in pro.elixir
Lama Lover
Ну я рад за плюсы
просто даже для сравнения целых чтобы сгенерить эти :lt :gt и :eq придется делать две проверки всегда, в то время как в дереве не всегда нужны обе
источник

Е

Евгений in pro.elixir
так что по поводу скорости, думаю, вы ошибаетесь
источник

LL

Lama Lover in pro.elixir
Евгений
так что по поводу скорости, думаю, вы ошибаетесь
Я не понимаю почему я ошибаюсь
Для сравнения целых в моём варианте - два сравнения
В твоём варианте - два сравнения
источник

Е

Евгений in pro.elixir
Lama Lover
Я не понимаю почему я ошибаюсь
Для сравнения целых в моём варианте - два сравнения
В твоём варианте - два сравнения
в моем варианте, два сравнения - в худшем случае, в лучшем - одно. В твоем - всегда два сравнения.
источник

AD

Anastasiya Dyachenko in pro.elixir
Евгений
в моем варианте, два сравнения - в худшем случае, в лучшем - одно. В твоем - всегда два сравнения.
вообще ты прав, только мне кажется будет работать одинаково
источник

LL

Lama Lover in pro.elixir
Евгений
в моем варианте, два сравнения - в худшем случае, в лучшем - одно. В твоем - всегда два сравнения.
Не правда. Твой код:
cond
 a < b
 b < a
 true
end

Мой код
cond
 a < b
 a == b
 true
end

?
источник

Е

Евгений in pro.elixir
Lama Lover
Не правда. Твой код:
cond
 a < b
 b < a
 true
end

Мой код
cond
 a < b
 a == b
 true
end

?
мы говорим о компараторе, а не коде внутри дерева, он как раз и практически не поменяется
источник

Е

Евгений in pro.elixir
в текущем исполнении до второй проверки просто не будет доходить, а в твоем всегда придется делать две проверки, так как нужно вернуть :eq, :lt, :gt,
источник

AD

Anastasiya Dyachenko in pro.elixir
нет, там тоже будет до первого совпадения
источник

AD

Anastasiya Dyachenko in pro.elixir
короче разницы нет
источник

Е

Евгений in pro.elixir
Anastasiya Dyachenko
нет, там тоже будет до первого совпадения
нет, после первого сравнения понятно что не :lt и придется сделать второе, чтобы понять :gt или :eq
источник

AD

Anastasiya Dyachenko in pro.elixir
источник

LL

Lama Lover in pro.elixir
Евгений
в текущем исполнении до второй проверки просто не будет доходить, а в твоем всегда придется делать две проверки, так как нужно вернуть :eq, :lt, :gt,
Я не понимаю, просто посмотри
источник

Е

Евгений in pro.elixir
ща подумаю, отвлекают постоянно тут :)
источник

AD

Anastasiya Dyachenko in pro.elixir
Lama Lover
Не правда. Твой код:
cond
 a < b
 b < a
 true
end

Мой код
cond
 a < b
 a == b
 true
end

?
я в твоем коде вижу разницу только в кейсах когда будет два когда одно сравнение, если не знаем какие кейсы будут чаще - разницы нет
источник