Уточнение ради уточнения:
Для java прогнал для 20000 элементов изменив циклы на классический for со счетчиком внутри.
Без данной замены время приблизительно не отличалось от указанного в статье (около 50-70 мс)
macOS Mojave 10.14.6
java 12.0.2-zulu
Код:
Заголовок спойлера
public static long levDist(byte[] s1, byte[] s2)
{
int m = s1.length;
int n = s2.length;
// Edge cases.
if (m == 0) {
return n;
} else if (n == 0) {
return m;
}
long[] v0 = new long[n+1];
long[] v1 = v0.clone();
for (int i = 0; i < s1.length; i++) {
v1[0] = i + 1;
for (int j = 0; j < s2.length; j++) {
long substCost = (s1[i] == s2[j]) ? v0[j] : (v0[j] + 1);
long delCost = v0[j + 1] + 1;
long insCost = v1[j] + 1;
v1[j + 1] = Math.min(substCost, delCost);
if (insCost < v1[j + 1]) {
v1[j + 1] = insCost;
}
}
long[] temp = v0;
v0 = v1;
v1 = temp;
}
return v0[n];
}
Странно, на самом деле. Уже около полугода на 4х машинах не было ни единой проблемы такого рода. Уведомления об обновлениях приходят стабильно часто, и без проблем скачиваются и устанавливаются. Думаю не у меня одного именно так. Возможно Ваша проблема была более комплексной, чем Вы думаете.
Ок. Поясню, что под «государством» я и имел ввиду правящую верхушку, ибо у нас в стране эти понятия в разговорном обиходе эквивалентны. Тогда как «страна» — это привязка к территории, истории, культурным и ментальным особенностям. Суть просто в субъективном понимании терминов, при том, что я не претендую на правоту относительно определений из учебников.
Все регулирование интернета делается, в первую очередь, для удовлетворения корыстных целей государства. Любой общественно-полезный эффект от этого — второстепенный бонус.
Полностью поддерживаю, т.к. сам один раз столкнулся с данной проблемой. Мне почему-то сразу вспомнилось вождение авто в любом авто-симуляторе. Самое сложное в этом деле — оценка расстояния до поворота при торможении «на глаз». Именно поэтому в современных автосимах придумали линию с траекторией, которая краснеет при более высокой скорости, чем нужно.
Ну во-первых, если взять те же США, динамика потребления сигарет там сократилась с ~650млрд. сигарет в год в 1980г до 300 в 2005-2006. Во-вторых, во многих государствах, курение разрешено далеко не везде, что существенно снижает риск от пассивного курения для других людей и, в частности, для маленьких детей. По сему, даже если в численном выражении кол-во курильщиков по всему миру не очень сильно изменилось, молодое поколение все меньше подвержено риску начать курить из-за грамотной пропаганды против данной зависимости. И в процентном соотношении кол-во курильщиков уменьшается.
Как мне кажется, немаловажной причиной в данной ситуации является снижение доли курильщиков в развитых странах (не путать со всеми остальными). Т.к. неоднократно утверждалось, что львиная доля раковых (в т.ч. рака прямой кишки), сердечно-сосудистых заболеваний и того же туберкулеза возникает именно по этой причине. Плюс не стоит забывать о последствиях так называемого «пассивного курения».
Однако это не меняет сути сказанного мной выше. Если Вы «обманете» вестибулярный аппарат водителя (особенно неопытного), то шанс фатальной для него ошибки существенно возрастет. Как мне кажется тут как раз прослеживается очень сильная зависимость от опыта вождения: т.е. чем меньше его(опыта), тем больше приходится задействовать органы чувств и тем более активно анализировать ситуацию. И наоборот: чем больше опыта (огромного списка ситуативных паттернов), тем менее полно и всеобъемлюще требуется вникать в дорожную ситуацию и моделировать возможные сценарии (ибо они все уже записаны в памяти). Если у Вас есть опыт вождения от 2 лет, Вы, определенно это заметите (т.н. «вождение на автомате»).
Огромное спасибо. Очень полезный, не смотря на краткость изложения, материал.
Для java прогнал для 20000 элементов изменив циклы на классический for со счетчиком внутри.
Без данной замены время приблизительно не отличалось от указанного в статье (около 50-70 мс)
macOS Mojave 10.14.6
java 12.0.2-zulu
Код:
Результаты выглядят заметно приятнее:
лин-индастризя».)