Тождества, используемые в алгоритмах умножения Карацуба (целые числа) Гаусс (комплексные числа) Штрассен (матрицы) кажется, очень тесно связаны. Есть ли общие абстрактные рамки /...
Тождества, используемые в алгоритмах умножения Карацуба (целые числа) Гаусс (комплексные числа) Штрассен (матрицы) кажется, очень тесно связаны. Есть ли общие абстрактные рамки /...
Как отсортировать список из 5 целых чисел, чтобы в худшем случае потребовалось 7 сравнений? Мне все равно, сколько других операций выполняется. Я не знаю ничего конкретного о целых числах. Я пробовал несколько разных подходов «разделяй и властвуй», которые сводят меня к 8 сравнениям, например,...
Алгоритм Рамер-Дуглас-Peucker для упрощения линии имеет наихудший среда выполнения. Для правильно распределенных случайных входов ожидаемая сложность времени выполнения . В 2D есть другие алгоритмы со сложностью времени выполнения худшем случае , которые вычисляют точно такой же результат, что и...
Я читал о динамическом программировании, когда наткнулся на следующую цитату Алгоритм динамического программирования рассмотрит все возможные пути решения проблемы и выберет лучшее решение. Таким образом, мы можем приблизительно представить динамическое программирование как интеллектуальный метод...
Во многих реализациях поиска в глубину, который я видел (например: здесь ), код различает серую вершину (обнаружена, но не все ее соседи были посещены) и черную вершину (обнаружена и все ее соседи посещены) , Какова цель этого различия? Кажется, что алгоритм DFS никогда не посещает посещенную...
Меня интересует вопрос об асимптотическом времени выполнения алгоритма Укконена , возможно, самого популярного алгоритма построения суффиксных деревьев за линейное (?) Время. Вот цитата из книги «Алгоритмы на строках, деревьях и последовательностях» Дэна Гасфилда (раздел 6.5.1): »... в...
В матричном умножении Штрассена мы констатируем один странный (по крайней мере для меня) факт, что умножение матрицы на два 2 x 2 требует 7 умножения. Вопрос: Как доказать, что невозможно умножить две матрицы 2 x 2 на 6 умножений? Обратите внимание, что матрицы над целыми...
При тестировании алгоритмов общим подходом является случайное тестирование: генерировать значительное количество входных данных в соответствии с некоторым распределением (обычно равномерным), запускать алгоритм на них и проверять правильность. Современные инфраструктуры тестирования могут...
Я пытаюсь найти максимальный независимый набор бипаритового графа. В некоторых заметках я обнаружил следующее: «13 мая 1998 г. - Вашингтонский университет - CSE 521 - Приложения сетевого потока» : Проблема: Для двудольного графа G=(U,V,E)G=(U,V,E)G = (U,V,E) найдите как можно большее независимое...
Я заметил, что в нескольких исследовательских работах по CS, для сравнения эффективности двух алгоритмов, используется общее число ключевых сравнений в алгоритмах, а не реальное время вычислений. Почему мы не можем сравнить, какая из них лучше, запустив обе программы и посчитав общее время,...
Я ищу алгоритм сортировки для массивов int, который не выделяет ни одного байта, кроме размера массива, и ограничен двумя инструкциями: SWAP: поменять следующий индекс на текущий; MOVE: перемещает курсор к индексу +1 или -1; То есть вы не можете поменять местами не соседние индексы и не поменять...
Предположим, вы получаете число mmm (используя O(logm)O(logm)O(\log m) бит в двоичном кодировании). Как быстро вы можете найти (или определить, что такое не существует) ?n,k∈N,1<k≤n2:(nk)=mn,k∈N,1<k≤n2:(nk)=mn,k\in \mathbb N,...
Предположим, мы получаем цифры в потоке. После получения каждого числа необходимо вычислить взвешенную сумму последних NNN чисел, где веса всегда одинаковы, но произвольны. Насколько эффективно это можно сделать, если нам разрешено сохранять структуру данных, чтобы помочь с вычислениями? Можем ли...
У вас есть массив из отдельных элементов. У вас есть доступ к компаратору (функция черного ящика, принимающая два элемента и и возвращающая true, если ) и действительно случайный источник битов (функция черного ящика, не принимающая аргументов и возвращающая независимо равномерно случайный бит)....
У меня NP-полное решение проблемы. Учитывая пример проблемы, я хотел бы разработать алгоритм, который выводит ДА, если проблема выполнима, и НЕТ, в противном случае. (Конечно, если алгоритм не является оптимальным, он будет делать ошибки.) Я не могу найти никаких приближенных алгоритмов для таких...
Учитывая смещенную NNN стороннюю матрицу, как можно случайное число в диапазоне [1,N][1,N][1,N]равномерно генерировать N ] ? Распределение вероятностей граней матрицы неизвестно, все, что известно, это то, что каждая грань имеет ненулевую вероятность и что распределение вероятности одинаково для...
Если существует алгоритм, работающий во времени O(f(n))O(f(n))O(f(n)) для некоторой задачи A, и кто-то придумывает алгоритм, работающий во времени, O(f(n)/g(n))O(f(n)/g(n))O(f(n)/g(n)) , где g(n)=o(f(n))g(n)=o(f(n))g(n) = o(f(n)) , считается ли это улучшением по сравнению с предыдущим алгоритмом?...
Благодаря теореме min-cut о максимальном потоке мы знаем, что мы можем использовать любой алгоритм для вычисления максимального потока в сетевом графе для вычисления -min-cut. Следовательно, сложность вычисления минимального -среза не больше, чем сложность вычисления максимального -потока.( с , т...
Комбинаторика играет важную роль в информатике. Мы часто используем комбинаторные методы как в анализе, так и в алгоритмах. Например, один из методов нахождения покрытия графа вершины в графе может просто проверить все \ binom {n} {k} возможных подмножеств. В то время как биномиальные функции...
Дана матрица . Пусть обратная матрица будет (то есть ). Предположим, что один элемент в изменен (скажем, до ). Цель состоит в том, чтобы найти после этого изменения. Есть ли способ найти эту цель, который более эффективен, чем пересчет обратной матрицы с нуля.n × nN×Nn \times...