<bgdev />free

Вход

Задача НЕ за интервю
7

0 1 2 3 4 5 6 ....18 19 20 21 22 ....32 33 34 35 36
#11384 (ツ) bvbfan
Създадено на 21.09.2020, видяно: 1410 пъти.
Унуфри
bvbfan
Унуфри
bvbfan

Много добре знам разликата :-)

Защо тогава е "отдолу" е същото ?

Trie е вид двучино дърво, ако не го специфицираш какъв точно е може да го обобщя като бинарно.

Като зубърче от ФМИ да питам - дефиницията на бинарно дърво е такова, което има макс 2 ноуда, което е недостатъчно да се пазят всички възможни подстрингове/близки на даден. Греша ?

Всеки елемент (node) на дървото има най-много 2 разклонения.

#11389 (ツ) |
Създадено на 21.09.2020, видяно: 1398 пъти.
bvbfan

Ползва lower_bound за сравнение, предполагам. Няма нужда от това да се пишат дължите на стринговете в дб, достатъчно оптимизирана е да си го зададеш в заявка и да ги филтрираш по дължина достатъчно бързо. Що се отнася до Го и сравнимостта със С е смехотворно, като го напишеш на Ръст, ще се съглася, че е същото.

Едит: Забравих да спомена, че sqlite държи резултатите в двуично дърво и реално "отдолу" имаш същото.

Я, още един дето знае по-добре от мен колко бърз е езика, който използвам.

Какво точно държа аз в "двуично" дърво, че било като sqlite? :)

#11390 (ツ) |
Създадено на 21.09.2020, видяно: 1396 пъти.
bvbfan

Всеки елемент (node) на дървото има най-много 2 разклонения.

Да не би да твърдиш, че ако с sqlite имаш таблица и една от колоните й е стринг, базата пази данните за тази колона в префикс трии? :)

#11392 (ツ) bvbfan
Създадено на 21.09.2020, видяно: 1393 пъти.
|
bvbfan

Всеки елемент (node) на дървото има най-много 2 разклонения.

Да не би да твърдиш, че ако с sqlite имаш таблица и една от колоните й е стринг, базата пази данните за тази колона в префикс трии? :)

Първо виж какво е резултат от заявка.

#11394 (ツ) |
Създадено на 21.09.2020, видяно: 1391 пъти.
bvbfan
|
bvbfan

Всеки елемент (node) на дървото има най-много 2 разклонения.

Да не би да твърдиш, че ако с sqlite имаш таблица и една от колоните й е стринг, базата пази данните за тази колона в префикс трии? :)

Първо виж какво е резултат от заявка.

Много добре знам какво е резултат от заявка. Отново. Твърдиш ли, ако може отговори с "да" или "не", че sqlite прави trie от данните в полето на таблицата?

#11395 (ツ) bvbfan
Създадено на 21.09.2020, видяно: 1388 пъти.
|

Много добре знам какво е резултат от заявка. Отново. Твърдиш ли, ако може отговори с "да" или "не", че sqlite прави trie от данните в полето на таблицата?

Никъде не съм писал подобно нещо.

#11396 (ツ) |
Създадено на 21.09.2020, видяно: 1387 пъти.
bvbfan
|

Много добре знам какво е резултат от заявка. Отново. Твърдиш ли, ако може отговори с "да" или "не", че sqlite прави trie от данните в полето на таблицата?

Никъде не съм писал подобно нещо.

Това означава ли, че отговорът е "не"?

#11397 (ツ) bvbfan
Последно редактирано на 21.09.2020 от bvbfan, видяно: 1385 пъти.

Не, разбира се. Базата данни е данни, те си стоят в някакъв вид (в зависимост от схемата), за ги достъпиш в удобен за теб вид се пишат заявки, които резултати са в двуично дърво.

#11398 (ツ) ФейкПрофил
Създадено на 21.09.2020, видяно: 1382 пъти.

не мога да разбера дали с джонката тролят или наистина не разбират

#11399 (ツ) |
Създадено на 21.09.2020, видяно: 1381 пъти.
bvbfan

Не, разбира се. Базата данни е данни, те си стоят в някакъв вид, за ги достъпиш в удобен за теб вид се пишат заявки, които резултати са в двуично дърво.

Ок, благодаря. Съгласен ли си, ако може да отговориш с "да" или "не", че когато sqlite прави join (да гледаме кода на johnfound, ако не си много против), то той ще извика функцията за Левенщайн дистанс за всяка двойка стрингове от двете таблици?

#11400 (ツ) |
Създадено на 21.09.2020, видяно: 1379 пъти.
ФейкПрофил

не мога да разбера дали с джонката тролят или наистина не разбират

Нямам идея, но очевидно се налага да говоря с тях като с идиоти. Няма проблем, децата ми бяха малки навремето.

#11401 (ツ) bvbfan
Създадено на 21.09.2020, видяно: 1378 пъти.

Къде виждаш код? Потребителските функции се извикват експлицитно, т.е. пишеш си името като агрегатните.

#11402 (ツ) |
Последно редактирано на 21.09.2020 от |, видяно: 1377 пъти.
bvbfan

Къде виждаш код? Потребителските функции се извикват експлицитно, т.е. пишеш си името като агрегатните.

Да, това казвам. Пишеш юзър функция (мисля, че го каза johnfound), тя извиква ли се за всяка двойка от стрингове от двете таблици? Да или не?

#11403 (ツ) bvbfan
Създадено на 21.09.2020, видяно: 1373 пъти.

Зависи от where клаузата, може да се извика, може и да не се извика.

#11404 (ツ) |
Създадено на 21.09.2020, видяно: 1371 пъти.
bvbfan

Зависи от where клаузата, може да се извика, може и да не се извика.

Хехехе. Ако where клаузата е празна, понеже се интересуваме от всички редове, извиква ли се за всяка двойка от стойности? Да или не? :)

#11405 (ツ) bvbfan
Създадено на 21.09.2020, видяно: 1368 пъти.

Ако не напишеш заявка, няма и данни да получиш, ако сме тръгнали натам. Зависи от group by/having и limit.

#11406 (ツ) |
Създадено на 21.09.2020, видяно: 1362 пъти.
bvbfan

Ако не напишеш заявка, няма и данни да получиш, ако сме тръгнали натам. Зависи от group by/having и limit.

Пак хехехехе. Johnfound е написал някакъв код в мнение 11212. Та, тази заявка ще извика ли потребителската функция за всяка двойка от стойности? Да или не?

#11407 (ツ) ФейкПрофил
Последно редактирано на 21.09.2020 от ФейкПрофил, видяно: 1360 пъти.
bvbfan

Ако не напишеш заявка, няма и данни да получиш, ако сме тръгнали натам. Зависи от group by/having и limit.

https://www.sqlite.org/optoverview.html#order_of_tables_in_a_join

The current implementation of SQLite uses only loop joins. That is to say, joins are implemented as nested loops.

for x in a {
  for y in b {

  }
}

каква е сложността на nested loop join алгоритъма ????

#11408 (ツ) johnfound
Създадено на 21.09.2020, видяно: 1358 пъти.
|
bvbfan

Ако не напишеш заявка, няма и данни да получиш, ако сме тръгнали натам. Зависи от group by/having и limit.

Пак хехехехе. Johnfound е написал някакъв код в мнение 11212. Та, тази заявка ще извика ли потребителската функция за всяка двойка от стойности? Да или не?

Като ме споменаваш, прочети малко по-внимателно текста в поста ми - този код не е решение на твоята задача, а само отправна точка за работа върху нея. Мислех, че ясно съм го написал и там и в следващите си постове.

#11410 (ツ) |
Създадено на 21.09.2020, видяно: 1353 пъти.
johnfound
|
bvbfan

Ако не напишеш заявка, няма и данни да получиш, ако сме тръгнали натам. Зависи от group by/having и limit.

Пак хехехехе. Johnfound е написал някакъв код в мнение 11212. Та, тази заявка ще извика ли потребителската функция за всяка двойка от стойности? Да или не?

Като ме споменаваш, прочети малко по-внимателно текста в поста ми - този код не е решение на твоята задача, а само отправна точка за работа върху нея. Мислех, че ясно съм го написал и там и в следващите си постове.

OK, има ли решение на задачата в sqlite, което няма да сравни всеки две двойки стойности от таблиците? Да или не?

0 1 2 3 4 5 6 ....18 19 20 21 22 ....32 33 34 35 36

Задача НЕ за интервю
7

AsmBB v3.0 (check-in: a316dab8b98d07d9); SQLite v3.42.0 (check-in: 831d0fb2836b71c9);
©2016..2023 John Found; Licensed under EUPL. Powered by Assembly language Created with Fresh IDE