Telegram Group & Telegram Channel
Алиса копается
#math Задачка на вечер: n фиксированных чисел x1, ..., xn в полуинтервале [0; 1) хешируются в таблицу с закрытой адресацией размера m методом floor(x*m). Покажите, что независимо от n, xi, m, увеличение размера таблицы может ухудшить среднее время запроса…
#math

Запишу решение, чтобы не потерялось, и если кто-то не следит за комментами.

Посмотрим на то, какие бакеты были и какие стали:

было    /------------/------------/------------/------------/------------/
стало /----/----/----/----/----/----/----/----/----/----/----/----/----/
элементы * * * ** * * * * * ** *** *


Зафиксируем пока число элементов в каждом из изначальных бакетов и посмотрим, какое самое плохое число коллизий может получиться в новом случае.

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

Таким образом, в худшем варианте числа лежат только в новых бакетах, пересекающих границу старых (здесь * обозначает потенциальные позиции):
было    -----|------
стало |-----|
элементы *****


Для i-го такого нового бакета обозначим за ai количество чисел, лежащих в нем слева от старой границы, а за bi — справа. Тогда сумма квадратов размеров бакетов была C = sum (a[i+1] + bi)^2, а стала C' = sum (ai + bi)^2.

Тогда имеем:
C' = sum (ai + bi)^2

Перепишем сумму через среднее арифметическое:
C' = 4 * sum ((ai + bi) / 2)^2

Применим неравенство о среднем арифметическом и среднем квадратичном:
C' <= 4 * sum (sqrt((ai^2 + bi^2) / 2))^2

Раскроем скобки:
C' <= 2 * sum (ai^2 + bi^2)

Разделим сумму на две, а затем заменим индексы в одной из сумм и сложим обратно:
C' <= 2 * sum (a[i+1]^2 + bi^2) <= 2 * C


Таким образом, доказана нужная оценка с константой 2. Легко проверить, что она достигается.



group-telegram.com/alisa_rummages/180
Create:
Last Update:

#math

Запишу решение, чтобы не потерялось, и если кто-то не следит за комментами.

Посмотрим на то, какие бакеты были и какие стали:

было    /------------/------------/------------/------------/------------/
стало /----/----/----/----/----/----/----/----/----/----/----/----/----/
элементы * * * ** * * * * * ** *** *


Зафиксируем пока число элементов в каждом из изначальных бакетов и посмотрим, какое самое плохое число коллизий может получиться в новом случае.

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

Таким образом, в худшем варианте числа лежат только в новых бакетах, пересекающих границу старых (здесь * обозначает потенциальные позиции):
было    -----|------
стало |-----|
элементы *****


Для i-го такого нового бакета обозначим за ai количество чисел, лежащих в нем слева от старой границы, а за bi — справа. Тогда сумма квадратов размеров бакетов была C = sum (a[i+1] + bi)^2, а стала C' = sum (ai + bi)^2.

Тогда имеем:
C' = sum (ai + bi)^2

Перепишем сумму через среднее арифметическое:
C' = 4 * sum ((ai + bi) / 2)^2

Применим неравенство о среднем арифметическом и среднем квадратичном:
C' <= 4 * sum (sqrt((ai^2 + bi^2) / 2))^2

Раскроем скобки:
C' <= 2 * sum (ai^2 + bi^2)

Разделим сумму на две, а затем заменим индексы в одной из сумм и сложим обратно:
C' <= 2 * sum (a[i+1]^2 + bi^2) <= 2 * C


Таким образом, доказана нужная оценка с константой 2. Легко проверить, что она достигается.

BY Алиса копается


Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260

Share with your friend now:
group-telegram.com/alisa_rummages/180

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

Either way, Durov says that he withdrew his resignation but that he was ousted from his company anyway. Subsequently, control of the company was reportedly handed to oligarchs Alisher Usmanov and Igor Sechin, both allegedly close associates of Russian leader Vladimir Putin. However, the perpetrators of such frauds are now adopting new methods and technologies to defraud the investors. Andrey, a Russian entrepreneur living in Brazil who, fearing retaliation, asked that NPR not use his last name, said Telegram has become one of the few places Russians can access independent news about the war. There was another possible development: Reuters also reported that Ukraine said that Belarus could soon join the invasion of Ukraine. However, the AFP, citing a Pentagon official, said the U.S. hasn’t yet seen evidence that Belarusian troops are in Ukraine. Telegram Messenger Blocks Navalny Bot During Russian Election
from ca


Telegram Алиса копается
FROM American