Alexander
у тебя какое n?
Alexander
бесконечное
Aleksey
оно все ещё линейно
что именно линейно?
Alexander
функция эта!
Alexander
выйдет через бесконечность умножить на константу
Alexander
все как и обещали
Aleksey
у take 3 . nub сложность уже 1 * (n-1) * (n-2)
Alexander
умри
Aleksey
после тебя
Alexander
ок, это вполне верноятно
Vladimir
Давно ghci от sigquit не валится?
Alexander
сложность функции take 3 . nub. 6*n
parket
у take 3 . nub сложность уже 1 * (n-1) * (n-2)
Это как? Умножь, и возьми макс степень, вроде так. n2
Alexander
это O(n)
Aleksey
умри
а че не так то?
Alexander
то, что ты сложность считать не умеешь
Alexander
для каждого элемента списка мы делаем 2 сравнения
Alexander
там не 6, а 2 конечно
Aleksey
nubBy eq [] = [] nubBy eq (x:xs) = x : nubBy eq (filter (\ y -> not (eq x y)) xs)
Aleksey
код из прелюдии
Anatolii
умри
что-то @qnikst злой сегодня :)
Alexander
да сегфолт же умный!
Aleksey
первый элемент возвращаем, второй - результат фильтра
Alexander
а ему нужно учи матчасть отвечать
Alexander
нельзя же так
Aleksey
для take 2 . nub сложность 1 * (n - 1) где n длинна списка
Alexander
если бы нонейм какой был, то понятно
Aleksey
все так?
Alexander
да
Alexander
про take 2 верно
Alexander
+ инфа о том, что функция итеративная
A64m
Окай, а на каких бесконечных списках работает nub?
в данном случае с take 2 на бесконечных списках в которых больше два различных элемента и больше, если второй "вид" элемента в списке под конечным номером
Alexander
для take 3 . nub будет 1+1+2*(n-2)
Alexander
так чего-то я криво пишу сегодня
Vladimir
в данном случае с take 2 на бесконечных списках в которых больше два различных элемента и больше, если второй "вид" элемента в списке под конечным номером
Да, я вижу, в чём не прав. nub действительно возвращает все уникальные элементы бесконечного списка. Единственное, где завалится -- это если попросить вернуть больше уникальных, чем в этом списке их есть.
Vladimir
Что логично. Доказать, что других элементов в списке нет, у него не получится.
Vladimir
Красиво, чо.
Alexander
стоит признаться я когда увидел код сначала подумал что шутка
Alexander
потом уже дошло, когда хотел написать что сложность великовата, ознал что все ок
тот
подкиньте ссылок, советов как учить хаскелл, если под рукой, используйте хештег #знание #хаскелл что-то в этом духе чтобы новичкам проще найти. так же стоит стандартизовать как этот язык называть на русском, чтобы проще поисковику было находить информацию
parket
Липовача для начала, имхо. Дальше по обстоятельствам.
IC
0) выучить английский. не обязательно, но станет сильно легче.
тот
IC
ну а как тогда выбрать задачу чтобы реализовать
составляешь список задач, сортируешь по интересности, выбираешь вторую, реализовываешь
A64m
читать ghc-мануал, читать ghc-wiki, читать исходники
andrei
вы че забыли про такой чат
тот
1) начинаешь учить 2) учишь 3) ????
верно, - "учить" еще стоит определить что это значит
IC
вы че забыли про такой чат
правильно. сидя в двух чатах работа пойдёт в два раза быстрее!!1
IC
все по хаскелю?
тот
@haskell_learn
благодарю. #haskell
A64m
можно что-нибудь писать еще, но лично мне лень, я думаю, не мне одному
тот
читать ghc-мануал, читать ghc-wiki, читать исходники
добавляйте хештеги если считаете полезным для других сообщение, благодарю за рекомендацию #haskell
parket
правильно. сидя в двух чатах работа пойдёт в два раза быстрее!!1
То, что один программист может сделать за месяц, два программиста могут сделать за два месяца.
доня.
добавляйте хештеги если считаете полезным для других сообщение, благодарю за рекомендацию #haskell
приходишь такой в чат по хаскелю и начинаешь всех учить какие хештеги ставить, лол
andrei
#чатосфера
тот
приходишь такой в чат по хаскелю и начинаешь всех учить какие хештеги ставить, лол
заметил это помогает людям просто указывать ключевые слова для поиска, чем дублировать или искать в тонне сообщений ссылку, желаю добро
A64m
что не так с поиском информации в чатах?
доня.
потому что чат и справочник это разные форматы
доня.
то что хочет ТС прекрасно ищется гуглом
доня.
можно спросить совета в чате
parket
Чат выгодно отличается тем, что если ты туговато понимаешь, тебе могут помочь понять. Или проследить за ходом твоих мыслей и подсказать где ты ошибся.
доня.
а использовать чат как список полезной информации неэффективно
доня.
чаты интерактивны, в них имеет смысл спрашивать что-то и надеяться на быстрый отклик
parket
Согласен, да. Не так тебя понял, извиняюсь.
доня.
а тупо список материала логичнее хранить например в канале, где он и без хештегов не потеряется в тоннах флуда
Alexander
@haskell_learn
throughs a fireball at @goodmind
andrei
cast spell
Евгений
throughs a fireball at @goodmind
Напиши бота для этого :)
Alexander
так с этого часа все во всех сообщениях если не оффтоп добавляют #haskell