Как стать автором
Обновить
3
0
Александр Емельянов @Irval

Backend разработчик

Отправить сообщение

Насколько я знаю, реализации регулярных выражений используют НКА с жадными откатами, либо ДКА. Алгоритмы совершенно разные.

Экономия памяти: По сравнению с базовым алгоритмом Дейкстры, который использует матрицу NxN, алгоритм использует матрицу размером 5xN, что позволяет сэкономить память, особенно при работе с большими графами.

Может быть, я чего-то не понимаю, но для хранения графа в алгоритме Дейкстры достаточно иметь vector<vector<int>> graph (vector = динамический массив), представляющий собой список смежности. По затратам на память это O(|E|) с константой около 2. Как Вы собираетесь хранить всю эту информацию за О(N) в предложенной матрице? Полагаю, подразумевается асимптотика О(|E|), но в таком случае константа уже 5...

Рассказали бы еще про особенности вещественной арифметики (например A + B = A, A * B = 0), представление INF и NaN. Конкретно эта информация реально очень полезна и зачастую бывает неизвестна даже опытным программистам.

В чем, собственно, проблема просто удалить все вхождения "символа ударения"?

s = "Беспа́мятство\nБеспоко́йно\nБеспоко́йный\nБеспоко́йство\nБеспоко́иться\nБеспоря́дки\nА́ховый"
s_clear = u"".join([c for c in s if ord(c) != 769])

UPD: Мы же не в Индии живем, где за количество строк платят :)

Очень странный подход, однако. Очевидно, что если Вам важна скорость написания кода, то использовать стоит eval. Он и работать должен быстрее, чем предложенный в статье метод. Если хотите предотвратить возникновение уязвимостей и считать все так же быстро - напишите алгоритм Дейкстры «Сортировочная станция» для перевода в польскую обратную запись. На Хабре об этом уже писали - https://habr.com/ru/post/100869/.

Скажу больше, сегодня сделали версию с возможностью игры на пользовательских серверах Cybershoke. Инфу взял из блога создателя читов на cs:go - https://t.me/dankm3m3/3661.

Ну если не учитывать не указанный класс графа, немного упрощенный for и создание ребер, то да.

Смотря о чем речь. Дополнительная асимптотика возможна, если Ваша структура сравнивается не за О(1).

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Software Developer, Backend Developer
Git
Python
MySQL
C#
C++
Qt
Algorithms and data structures