Не трябва да обходя цялото дърво, а само частите които ще доведат по-малка разлика от тази която има е в момента.
Което може и да е цялото дърво, ако минималният елемент е последният. А средно - половината дърво. Което, както казах не променя асимптотичната сложност на алгоритъма.
А на какъв език е написано това, което работи една седмица?
|
Създадено на 20.09.2020, видяно: 1938 пъти. #11301
Не трябва да обходя цялото дърво, а само частите които ще доведат по-малка разлика от тази която има е в момента.
Което може и да е цялото дърво, ако минималният елемент е последният. А средно - половината дърво. Което, както казах не променя асимптотичната сложност на алгоритъма.
А на какъв език е написано това, което работи една седмица?
Нали вече ти казах, слабо че интересува асимптотичната сложност. Затова и съм дал брой на елементите.
Написано е на Go, скоростта е близка до С.
johnfound
Създадено на 20.09.2020, видяно: 1930 пъти. #11307
Не трябва да обходя цялото дърво, а само частите които ще доведат по-малка разлика от тази която има е в момента.
Което може и да е цялото дърво, ако минималният елемент е последният. А средно - половината дърво. Което, както казах не променя асимптотичната сложност на алгоритъма.
А на какъв език е написано това, което работи една седмица?
Нали вече ти казах, слабо че интересува асимптотичната сложност. Затова и съм дал брой на елементите.
Написано е на Go, скоростта е близка до С.
Тези, на които асимптотичната сложност не им е важна, би трябвало да пишат на асемблер.
Защото скоростта на Go не е "близка до C" - поне 3 пъти е по-бавен. Близки са само "асимптотично" и то условно, а ти казваш, че асимптотиката не те интересува.
|
Последно редактирано на 21.09.2020 от |, видяно: 1923 пъти. #11317
Не трябва да обходя цялото дърво, а само частите които ще доведат по-малка разлика от тази която има е в момента.
Което може и да е цялото дърво, ако минималният елемент е последният. А средно - половината дърво. Което, както казах не променя асимптотичната сложност на алгоритъма.
А на какъв език е написано това, което работи една седмица?
Нали вече ти казах, слабо че интересува асимптотичната сложност. Затова и съм дал брой на елементите.
Написано е на Go, скоростта е близка до С.
Тези, на които асимптотичната сложност не им е важна, би трябвало да пишат на асемблер.
Защото скоростта на Go не е "близка до C" - поне 3 пъти е по-бавен. Близки са само "асимптотично" и то условно, а ти казваш, че асимптотиката не те интересува.
Ти наистина ли ще ме учиш колко е бавен езика на който пиша? :)
За фантазиите ти как асемблера бил най-бърз вече коментирахме.
Унуфри
Създадено на 20.09.2020, видяно: 1913 пъти. #11327
Не, big data на нишки в рама срещу sqlite, разбира се и той може всичко в рама, зависи от кеша. В интерес на истината sqlite бие всякакви nosql лайна и се доближава до напълно данните в рама, ако кеша е достатъчно голям, но печелиш, много по-малко код, кеф ти всякакви заявки.
Т.е. не може да се сравнява с моя код. :)
Какъвто и да е "твоят" код, сравнявам двоични дървета, "твоят" мога да прогнозирам, че не става, ако не е някакво подобие.
Написал съм какъв е моят код. Trie.
Какво има в двоичните дървета?
Чудех се дали да се обадя въобще по тази тема, че ще защитя пайпа сега и ще ме нападнете. Ама няма да ми е сефте :) Преди повече от 15 години, бедни студенти от ФМИ писахме биоинформатични чекии. За търсене на всички възможни подстрингове на дадени термини в ntext в mssql 2000 строяхме външни индекси базирани на tries. Проблемът е, че като ги свриализираш стават гигантски. По онея години си бяха гигабайти и отнемаше много часове да се построят. Деба някъде сигурно имам кода, на. нет 1.1 го писахме... Абе пайп ти да не си кадър на ФМИ на СУ?
Унуфри
Създадено на 20.09.2020, видяно: 1911 пъти. #11329
Поради липса на едит пиша второ мнение. Само пайпа е в правият път. С останалите решения ще се озорите. Дали ще е подстринг или симиларити е без значение.
|
Създадено на 20.09.2020, видяно: 1904 пъти. #11334
Чудех се дали да се обадя въобще по тази тема, че ще защитя пайпа сега и ще ме нападнете. Ама няма да ми е сефте :) Преди повече от 15 години, бедни студенти от ФМИ писахме биоинформатични чекии. За търсене на всички възможни подстрингове на дадени термини в ntext в mssql 2000 строяхме външни индекси базирани на tries. Проблемът е, че като ги свриализираш стават гигантски. По онея години си бяха гигабайти и отнемаше много часове да се построят. Деба някъде сигурно имам кода, на. нет 1.1 го писахме... Абе пайп ти да не си кадър на ФМИ на СУ?
Магистърската ми степен е от ФМИ, разбира се. Докторската е от чужбина. :)
|
Последно редактирано на 21.09.2020 от |, видяно: 1898 пъти. #11339
Кода изобщо не е много, в омента не съм вкъщи да проверя, но е под 50 реда С.
Греша, кода ми е около 100 реда.
Другата грешка е броят на стринговете в колекция Б: 23 милиона са.
Унуфри
Създадено на 21.09.2020, видяно: 1869 пъти. #11346
Чудех се дали да се обадя въобще по тази тема, че ще защитя пайпа сега и ще ме нападнете. Ама няма да ми е сефте :) Преди повече от 15 години, бедни студенти от ФМИ писахме биоинформатични чекии. За търсене на всички възможни подстрингове на дадени термини в ntext в mssql 2000 строяхме външни индекси базирани на tries. Проблемът е, че като ги свриализираш стават гигантски. По онея години си бяха гигабайти и отнемаше много часове да се построят. Деба някъде сигурно имам кода, на. нет 1.1 го писахме... Абе пайп ти да не си кадър на ФМИ на СУ?
Магистърската ми степен е от ФМИ, разбира се. Докторската е от чужбина. :)
А така, знайхми чи си от нащи!
Рамбо вие дискретнта математика учихте ли в меито? Запознат ли си с научните трудове на Татко Смърф?
bvbfan
Последно редактирано на 21.09.2020 от bvbfan, видяно: 1864 пъти. #11347
Ползва lower_bound за сравнение, предполагам. Няма нужда от това да се пишат дължите на стринговете в дб, достатъчно оптимизирана е да си го зададеш в заявка и да ги филтрираш по дължина достатъчно бързо. Що се отнася до Го и сравнимостта със С е смехотворно, като го напишеш на Ръст, ще се съглася, че е същото.
Едит: Забравих да спомена, че sqlite държи резултатите в двуично дърво и реално "отдолу" имаш същото.
Унуфри
Създадено на 21.09.2020, видяно: 1859 пъти. #11350
Едит: Забравих да спомена, че sqlite държи резултатите в двуично дърво и реално "отдолу" имаш същото.
Rabin
Последно редактирано на 21.09.2020 от Rabin, видяно: 1857 пъти. #11353
Рамбо вие дискретнта математика учихте ли в меито?
Учихме, ама дори не помня закво ставаше въпрос. Качил съм кашоните на тавана, дето съм снимал лекции и купувал сборници за решаване задачи. Изпадат някви много странни книги, после гледам в дипломата - абе учили сме го. Ама кво е било - ебеш ли му мамата!
Наков е прав като плюе имбецилните дядки дето на програмисти преподават якост на бетона.
Изпадат в смисъл като дууне ветър и падат отгоре, абе много е забавно. Туй беше цялата файда от следването.
bvbfan
Създадено на 21.09.2020, видяно: 1856 пъти. #11354
Много добре знам разликата
Унуфри
Създадено на 21.09.2020, видяно: 1851 пъти. #11356
Много добре знам разликата
Защо тогава е "отдолу" е същото ?
Унуфри
Създадено на 21.09.2020, видяно: 1851 пъти. #11357
Рамбо вие дискретнта математика учихте ли в меито?
Учихме, ама дори не помня закво ставаше въпрос. Качил съм кашоните на тавана, дето съм снимал лекции и купувал сборници за решаване задачи. Изпадат някви много странни книги, после гледам в дипломата - абе учили сме го. Ама кво е било - ебеш ли му мамата!
Наков е прав като плюе имбецилните дядки дето на програмисти преподават якост на бетона.
Изпадат в смисъл като дууне ветър и падат отгоре, абе много е забавно. Туй беше цялата файда от следването.
Сефте чувам, че МЕИ-тата имали такава дисциплина, така маловажна спрямо металознанието. Но ако си намериш из кашоните дипломата провери за всеки случай.
Rabin
Създадено на 21.09.2020, видяно: 1850 пъти. #11358
Сефте чувам, че МЕИ-тата имали такава дисциплина, така маловажна спрямо металознанието. Но ако си намериш из кашоните дипломата провери за всеки случай.
Дискретни структури се казваше, ся се сещам. Не е ли същото? Няква дърта леля ни го водеше, друго не помня.
bvbfan
Създадено на 21.09.2020, видяно: 1848 пъти. #11362
Много добре знам разликата
Защо тогава е "отдолу" е същото ?
Trie е вид двучино дърво, ако не го специфицираш какъв точно е може да го обобщя като бинарно.
Унуфри
Създадено на 21.09.2020, видяно: 1846 пъти. #11364
Много добре знам разликата
Защо тогава е "отдолу" е същото ?
Trie е вид двучино дърво, ако не го специфицираш какъв точно е може да го обобщя като бинарно.
Като зубърче от ФМИ да питам - дефиницията на бинарно дърво е такова, което има макс 2 ноуда, което е недостатъчно да се пазят всички възможни подстрингове/близки на даден. Греша ?
Унуфри
Създадено на 21.09.2020, видяно: 1845 пъти. #11366
Сефте чувам, че МЕИ-тата имали такава дисциплина, така маловажна спрямо металознанието. Но ако си намериш из кашоните дипломата провери за всеки случай.
Дискретни структури се казваше, ся се сещам. Не е ли същото? Няква дърта леля ни го водеше, друго не помня.
Не грешиш, но реално са само демо. Ето
Библията на Татко Смърф.