Не трябва да обходя цялото дърво, а само частите които ще доведат по-малка разлика от тази която има е в момента.
Което може и да е цялото дърво, ако минималният елемент е последният. А средно - половината дърво. Което, както казах не променя асимптотичната сложност на алгоритъма.
А на какъв език е написано това, което работи една седмица?
|
Създадено на 20.09.2020, видяно: 1939 пъти. #11301
Не трябва да обходя цялото дърво, а само частите които ще доведат по-малка разлика от тази която има е в момента.
Което може и да е цялото дърво, ако минималният елемент е последният. А средно - половината дърво. Което, както казах не променя асимптотичната сложност на алгоритъма.
А на какъв език е написано това, което работи една седмица?
Нали вече ти казах, слабо че интересува асимптотичната сложност. Затова и съм дал брой на елементите.
Написано е на Go, скоростта е близка до С.
johnfound
Създадено на 20.09.2020, видяно: 1931 пъти. #11307
Не трябва да обходя цялото дърво, а само частите които ще доведат по-малка разлика от тази която има е в момента.
Което може и да е цялото дърво, ако минималният елемент е последният. А средно - половината дърво. Което, както казах не променя асимптотичната сложност на алгоритъма.
А на какъв език е написано това, което работи една седмица?
Нали вече ти казах, слабо че интересува асимптотичната сложност. Затова и съм дал брой на елементите.
Написано е на Go, скоростта е близка до С.
Тези, на които асимптотичната сложност не им е важна, би трябвало да пишат на асемблер.
Защото скоростта на Go не е "близка до C" - поне 3 пъти е по-бавен. Близки са само "асимптотично" и то условно, а ти казваш, че асимптотиката не те интересува.
|
Последно редактирано на 21.09.2020 от |, видяно: 1924 пъти. #11317
Не трябва да обходя цялото дърво, а само частите които ще доведат по-малка разлика от тази която има е в момента.
Което може и да е цялото дърво, ако минималният елемент е последният. А средно - половината дърво. Което, както казах не променя асимптотичната сложност на алгоритъма.
А на какъв език е написано това, което работи една седмица?
Нали вече ти казах, слабо че интересува асимптотичната сложност. Затова и съм дал брой на елементите.
Написано е на Go, скоростта е близка до С.
Тези, на които асимптотичната сложност не им е важна, би трябвало да пишат на асемблер.
Защото скоростта на Go не е "близка до C" - поне 3 пъти е по-бавен. Близки са само "асимптотично" и то условно, а ти казваш, че асимптотиката не те интересува.
Ти наистина ли ще ме учиш колко е бавен езика на който пиша? :)
За фантазиите ти как асемблера бил най-бърз вече коментирахме.
Унуфри
Създадено на 20.09.2020, видяно: 1914 пъти. #11327
Не, big data на нишки в рама срещу sqlite, разбира се и той може всичко в рама, зависи от кеша. В интерес на истината sqlite бие всякакви nosql лайна и се доближава до напълно данните в рама, ако кеша е достатъчно голям, но печелиш, много по-малко код, кеф ти всякакви заявки.
Т.е. не може да се сравнява с моя код. :)
Какъвто и да е "твоят" код, сравнявам двоични дървета, "твоят" мога да прогнозирам, че не става, ако не е някакво подобие.
Написал съм какъв е моят код. Trie.
Какво има в двоичните дървета?
Чудех се дали да се обадя въобще по тази тема, че ще защитя пайпа сега и ще ме нападнете. Ама няма да ми е сефте :) Преди повече от 15 години, бедни студенти от ФМИ писахме биоинформатични чекии. За търсене на всички възможни подстрингове на дадени термини в ntext в mssql 2000 строяхме външни индекси базирани на tries. Проблемът е, че като ги свриализираш стават гигантски. По онея години си бяха гигабайти и отнемаше много часове да се построят. Деба някъде сигурно имам кода, на. нет 1.1 го писахме... Абе пайп ти да не си кадър на ФМИ на СУ?
Унуфри
Създадено на 20.09.2020, видяно: 1912 пъти. #11329
Поради липса на едит пиша второ мнение. Само пайпа е в правият път. С останалите решения ще се озорите. Дали ще е подстринг или симиларити е без значение.
|
Създадено на 20.09.2020, видяно: 1905 пъти. #11334
Чудех се дали да се обадя въобще по тази тема, че ще защитя пайпа сега и ще ме нападнете. Ама няма да ми е сефте :) Преди повече от 15 години, бедни студенти от ФМИ писахме биоинформатични чекии. За търсене на всички възможни подстрингове на дадени термини в ntext в mssql 2000 строяхме външни индекси базирани на tries. Проблемът е, че като ги свриализираш стават гигантски. По онея години си бяха гигабайти и отнемаше много часове да се построят. Деба някъде сигурно имам кода, на. нет 1.1 го писахме... Абе пайп ти да не си кадър на ФМИ на СУ?
Магистърската ми степен е от ФМИ, разбира се. Докторската е от чужбина. :)
|
Последно редактирано на 21.09.2020 от |, видяно: 1899 пъти. #11339
Кода изобщо не е много, в омента не съм вкъщи да проверя, но е под 50 реда С.
Греша, кода ми е около 100 реда.
Другата грешка е броят на стринговете в колекция Б: 23 милиона са.
Унуфри
Създадено на 21.09.2020, видяно: 1870 пъти. #11346
Чудех се дали да се обадя въобще по тази тема, че ще защитя пайпа сега и ще ме нападнете. Ама няма да ми е сефте :) Преди повече от 15 години, бедни студенти от ФМИ писахме биоинформатични чекии. За търсене на всички възможни подстрингове на дадени термини в ntext в mssql 2000 строяхме външни индекси базирани на tries. Проблемът е, че като ги свриализираш стават гигантски. По онея години си бяха гигабайти и отнемаше много часове да се построят. Деба някъде сигурно имам кода, на. нет 1.1 го писахме... Абе пайп ти да не си кадър на ФМИ на СУ?
Магистърската ми степен е от ФМИ, разбира се. Докторската е от чужбина. :)
А така, знайхми чи си от нащи!
Рамбо вие дискретнта математика учихте ли в меито? Запознат ли си с научните трудове на Татко Смърф?
bvbfan
Последно редактирано на 21.09.2020 от bvbfan, видяно: 1865 пъти. #11347
Ползва lower_bound за сравнение, предполагам. Няма нужда от това да се пишат дължите на стринговете в дб, достатъчно оптимизирана е да си го зададеш в заявка и да ги филтрираш по дължина достатъчно бързо. Що се отнася до Го и сравнимостта със С е смехотворно, като го напишеш на Ръст, ще се съглася, че е същото.
Едит: Забравих да спомена, че sqlite държи резултатите в двуично дърво и реално "отдолу" имаш същото.
Унуфри
Създадено на 21.09.2020, видяно: 1860 пъти. #11350
Едит: Забравих да спомена, че sqlite държи резултатите в двуично дърво и реално "отдолу" имаш същото.
Rabin
Последно редактирано на 21.09.2020 от Rabin, видяно: 1858 пъти. #11353
Рамбо вие дискретнта математика учихте ли в меито?
Учихме, ама дори не помня закво ставаше въпрос. Качил съм кашоните на тавана, дето съм снимал лекции и купувал сборници за решаване задачи. Изпадат някви много странни книги, после гледам в дипломата - абе учили сме го. Ама кво е било - ебеш ли му мамата!
Наков е прав като плюе имбецилните дядки дето на програмисти преподават якост на бетона.
Изпадат в смисъл като дууне ветър и падат отгоре, абе много е забавно. Туй беше цялата файда от следването.
bvbfan
Създадено на 21.09.2020, видяно: 1857 пъти. #11354
Много добре знам разликата
Унуфри
Създадено на 21.09.2020, видяно: 1852 пъти. #11356
Много добре знам разликата
Защо тогава е "отдолу" е същото ?
Унуфри
Създадено на 21.09.2020, видяно: 1852 пъти. #11357
Рамбо вие дискретнта математика учихте ли в меито?
Учихме, ама дори не помня закво ставаше въпрос. Качил съм кашоните на тавана, дето съм снимал лекции и купувал сборници за решаване задачи. Изпадат някви много странни книги, после гледам в дипломата - абе учили сме го. Ама кво е било - ебеш ли му мамата!
Наков е прав като плюе имбецилните дядки дето на програмисти преподават якост на бетона.
Изпадат в смисъл като дууне ветър и падат отгоре, абе много е забавно. Туй беше цялата файда от следването.
Сефте чувам, че МЕИ-тата имали такава дисциплина, така маловажна спрямо металознанието. Но ако си намериш из кашоните дипломата провери за всеки случай.
Rabin
Създадено на 21.09.2020, видяно: 1851 пъти. #11358
Сефте чувам, че МЕИ-тата имали такава дисциплина, така маловажна спрямо металознанието. Но ако си намериш из кашоните дипломата провери за всеки случай.
Дискретни структури се казваше, ся се сещам. Не е ли същото? Няква дърта леля ни го водеше, друго не помня.
bvbfan
Създадено на 21.09.2020, видяно: 1849 пъти. #11362
Много добре знам разликата
Защо тогава е "отдолу" е същото ?
Trie е вид двучино дърво, ако не го специфицираш какъв точно е може да го обобщя като бинарно.
Унуфри
Създадено на 21.09.2020, видяно: 1847 пъти. #11364
Много добре знам разликата
Защо тогава е "отдолу" е същото ?
Trie е вид двучино дърво, ако не го специфицираш какъв точно е може да го обобщя като бинарно.
Като зубърче от ФМИ да питам - дефиницията на бинарно дърво е такова, което има макс 2 ноуда, което е недостатъчно да се пазят всички възможни подстрингове/близки на даден. Греша ?
Унуфри
Създадено на 21.09.2020, видяно: 1846 пъти. #11366
Сефте чувам, че МЕИ-тата имали такава дисциплина, така маловажна спрямо металознанието. Но ако си намериш из кашоните дипломата провери за всеки случай.
Дискретни структури се казваше, ся се сещам. Не е ли същото? Няква дърта леля ни го водеше, друго не помня.
Не грешиш, но реално са само демо. Ето
Библията на Татко Смърф.