Вопросы с тегом «algorithms»

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

3
Какой самый быстрый алгоритм поиска всех кратчайших путей в разреженном графе?
В невзвешенном неориентированном графе с вершинами и ребрами, такими, что , каков самый быстрый способ найти все кратчайшие пути в графе? Можно ли сделать это быстрее, чем Флойд-Варшалл, который является но очень быстро за итерацию?E 2 V > E O ( V 3 )VVVEEE2V>E2V>E2V \gt EO(V3)O(V3)O(V^3) Как насчет того, если …

1
Когда жадный алгоритм может решить проблему смены монет?
Учитывая набор монет с различными конфессиями и значение v, вы хотите найти наименьшее количество монет, необходимое для представления значения v.с 1 , . , , , с пс1,,,,,сNc1, ... , cn Например, для набора монет 1,5,10,20 это дает 2 монеты на сумму 6 и 6 монет на сумму 19. Мой …

3
Получение кратчайшего пути динамического графа
Я изучаю кратчайшие пути в ориентированных графах в настоящее время. Существует много эффективных алгоритмов для поиска кратчайшего пути в сети, например, dijkstra или bellman-ford. Но что, если график является динамическим? Говоря динамически, я имею в виду, что мы можем вставлять или удалять вершины во время выполнения программы. Я пытаюсь найти …

2
Эффективный алгоритм «суммирования» набора сумм
Учитывая мультимножество натуральных чисел X, рассмотрим множество всех возможных сумм: sums(X)={∑i∈Ai|A⊆X}sums(X)={∑i∈Ai|A⊆X}\textrm{sums}(X)= \left\{ \sum_{i \in A} i \,|\, A \subseteq X \right\} Например, sums({1,5})={0,1,5,6}sums({1,5})={0,1,5,6}\textrm{sums}(\left\{1,5\right\}) = \left\{0, 1, 5, 6\right\} а .sums({1,1})={0,1,2}sums({1,1})={0,1,2}\textrm{sums}(\left\{1,1\right\}) = \left\{0, 1, 2\right\} Какой алгоритм расчета обратной операции наиболее эффективен (измеряется в терминах размера входного набора сумм)? В частности, …

1
Сортировка как линейная программа
У удивительного числа проблем есть довольно естественное сокращение к линейному программированию (LP). См. Главу 7 в [1] для примеров, таких как сетевые потоки, двустороннее сопоставление, игры с нулевой суммой, кратчайшие пути, форма линейной регрессии и даже оценка схемы! Поскольку оценка схемы сводится к линейному программированию, любая проблема в должна иметь …

5
Почему люди с низким уровнем подготовки имеют шанс выжить в следующем поколении?
В настоящее время я читаю и наблюдаю за генетическим алгоритмом, и я нахожу его очень интересным (у меня не было возможности изучить его, пока я учился в университете). Я понимаю, что мутации основаны на вероятности (случайность - корень эволюции), но я не понимаю, почему выживание. Из того, что я понимаю, …

1
Как доказать правильность алгоритма тасования?
У меня есть два способа составить список предметов в случайном порядке, и я хотел бы определить, являются ли они одинаково справедливыми (беспристрастными). Первый метод, который я использую, состоит в том, чтобы создать весь список элементов, а затем выполнить случайное перемешивание (скажем, случайное перемешивание Фишера-Йейтса). Второй метод - это скорее итеративный …

1
Различают процедуру принятия решения против решателя SMT и средства доказательства теорем против решателя ограничений
Эти термины смущают меня. Насколько я понимаю SAT решатель: решить выполнимость логики высказываний (используя DPLL или локальный поиск). Процедура принятия решения - это процедура определения выполнимости некоторой разрешимой теории первого порядка. SMT-решатель - это SAT-решатель + процедура принятия решения. Теорема доказатель указывает что-то вроде динамической логики, например, инструмент KeY Решатель …

3
Когда тест на первичность AKS действительно быстрее, чем другие тесты?
Я пытаюсь получить представление о том, как следует интерпретировать тест простоты AKS, когда узнаю о нем, например, следствие для доказательства того, что PRIMES ⊆ P, или действительно практичный алгоритм тестирования простоты на компьютерах. Тест имеет полиномиальное время выполнения, но с высокой степенью и возможными высокими константами. Итак, в практическом смысле, …


2
Если я могу решить судоку, могу ли я решить задачу коммивояжера (TSP)? Если так, то как?
Допустим, есть такая программа, которая, если вы дадите частично заполненную судоку любого размера, даст вам соответствующую заполненную судоку. Можете ли вы рассматривать эту программу как черный ящик и использовать это для решения TSP? Я имею в виду, есть ли способ представить проблему TSP как частично заполненную судоку, так что, если …

1
Сложность прохождения мода
Это похоже на вопрос, который должен иметь простой ответ, но у меня нет однозначного ответа: Если у меня есть два битных числа , какова сложность вычисления ?nnna,pa,pa, pamodpamodpa\bmod p Простое деление aaa на ppp заняло бы время O(M(n))O(M(n))O(M(n)) где M(n)M(n)M(n) - сложность умножения. Но можно ли выполнить modmod\bmod немного быстрее?

2
Почему push_back в векторах C ++ постоянно амортизируется?
Я изучаю C ++ и заметил, что время выполнения функции push_back для векторов постоянно «амортизируется». В документации также отмечается, что «если происходит перераспределение, само перераспределение будет линейным во всем размере». Разве это не означает, что функция push_back - это , где - длина вектора? В конце концов, нас интересует анализ …

2
Коллективно оплатить счет проблемы
За столом человек. й человек должен платить долларов.nnniiipipip_i Некоторые люди не имеют правильных счетов для оплаты точно , поэтому они придумали следующий алгоритм.pipip_i Во-первых, каждый кладет часть своих денег на стол. Затем каждый человек забирает деньги, которые он переплатил. Счета имеют фиксированный набор номиналов (не является частью ввода). Пример: предположим, …

1
Как работает таблица маршрутизации Population Pastry?
Этот вопрос был перенесен из Биржи стека разработки программного обеспечения, поскольку на него можно ответить в Бирже стеков информатики. Мигрировал 7 лет назад . Я пытаюсь реализовать распределенную хэш-таблицу для выпечки, но некоторые вещи ускользают от моего понимания. Я надеялся, что кто-то сможет уточнить. Отказ от ответственности : я не …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.