Вопросы с тегом «time-complexity»

Количество временных ресурсов (количество атомарных операций или машинных шагов), необходимое для решения проблемы, выраженной в виде размера ввода. Если ваш вопрос касается анализа алгоритма, используйте вместо него тег [runtime-analysis]. Если ваш вопрос касается того, завершится ли когда-либо * вычисление или нет, используйте вместо него тег [compubility]. Сложность времени, пожалуй, самая важная подтема теории сложности.

6
Как мы можем предположить, что основные операции над числами занимают постоянное время?
Обычно в алгоритмах мы не заботимся о сравнении, сложении или вычитании чисел - мы предполагаем, что они выполняются за время . Например, мы предполагаем это, когда говорим, что сортировка на основе сравнения - это O ( n log n ) , но когда числа слишком велики, чтобы поместиться в регистры, …

8
Алгоритмическая интуиция для логарифмической сложности
Я считаю, что у меня есть разумное представление о сложностях, таких как , Θ ( n ) и Θ ( n 2 )O(1)O(1)\mathcal{O}(1)Θ(n)Θ(n)\Theta(n)Θ(n2)Θ(n2)\Theta(n^2) . С точки зрения списка, - это постоянный поиск, поэтому он просто получает заголовок списка. Θ ( n ) - это место, где я прошёл бы весь …

8
Что такое самый быстрый алгоритм сортировки для массива целых чисел?
Я сталкивался со многими алгоритмами сортировки во время учебы в старшей школе. Тем не менее, я никогда не знаю, какой самый быстрый (для случайного массива целых чисел). Итак, мои вопросы: Какой самый быстрый в настоящее время известный алгоритм сортировки? Теоретически, возможно, что есть еще более быстрые? Итак, какая наименьшая сложность …

2
Найти медиану несортированного массива за время
Чтобы найти медиану несортированного массива, мы можем сделать минимальную кучу за времени для элементов, а затем мы можем извлечь один за другим элементов, чтобы получить медиану. Но этот подход занял бы времени.O(nlogn)O(nlog⁡n)O(n\log n)nnnn/2n/2n/2O(nlogn)O(nlog⁡n)O(n \log n) Можем ли мы сделать то же самое некоторым способом за раз? Если мы можем, то …

3
Проблемы с решениями против «настоящих» проблем, которые не да или нет
Я читал во многих местах, что некоторые проблемы трудно приблизить ( NP-трудно приблизить их). Но аппроксимация не является проблемой решения: ответ - это действительное число, а не «Да» или «Нет». Также для каждого желаемого коэффициента аппроксимации существует много правильных ответов и много неправильных, и это изменяется с желаемым коэффициентом аппроксимации! …

1
Существует ли структура данных «стек строк», которая поддерживает эти строковые операции?
Я ищу структуру данных , которая хранит множество строк над набором символов , способных выполнять следующие операции. Обозначим через D ( S ) в качестве структуры данных , хранящей множество строк S .ΣΣ\SigmaD(S)D(S)\mathcal{D}(S)SSS Add-Prefix-Setна : для некоторого множества T (возможно, пустых) строк, размер которых ограничен константой, а длины строк ограничены …

4
Временная сложность нахождения диаметра графа
Какова временная сложность нахождения диаметра графа ?G = ( V, E)G=(V,E)G=(V,E) O ( | V|2)O(|V|2){O}(|V|^2) O ( | V|2+ | В| ⋅ | Е| )O(|V|2+|V|⋅|E|){O}(|V|^2+|V| \cdot |E|) O ( | V|2⋅ | Е| )O(|V|2⋅|E|){O}(|V|^2\cdot |E|) O ( | V| ⋅ | Е|2)O(|V|⋅|E|2){O}(|V|\cdot |E|^2) Диаметр графа является максимумом множества кратчайших расстояний …

2
Структура данных с поиском, вставкой и удалением за амортизированное время ?
Существует ли структура данных для ведения упорядоченного списка, которая поддерживает следующие операции за время амортизации ?O ( 1 )O(1)O(1) GetElement (k) : возвращает й элемент списка.Кkk InsertAfter (x, y) : вставить новый элемент y в список сразу после x. Удалить (x) : удалить x из списка. Для последних двух операций …

3
Реально ли доказать нижние оценки?
Учитывая любую вычислительную проблему, является ли задача нахождения нижних границ для такого вычисления действительно возможной? Я полагаю, что все сводится к тому, как определяется один вычислительный шаг и какую модель мы используем для доказательства, но, учитывая это, действительно ли мы докажем нижнюю границу, тогда вообще? Я имею в виду, что …

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

2
Как можно проверить задачу коммивояжера за полиномиальное время?
Так что я понимаю идею, что решение проблемы определяется как Есть ли путь P такой, что стоимость ниже, чем C? и вы можете легко проверить это, проверив полученный вами путь. Однако что, если нет пути, который соответствует этим критериям? Как бы вы проверили ответ «нет», не решив проблему TSP с …

6
за время O (n): найти наибольший элемент в наборе, где сравнение не транзитивно
Название устанавливает вопрос. В качестве входных данных у нас есть список элементов, которые мы можем сравнить (определить, какой из них больше ). Ни один элемент не может быть равным. Ключевые моменты: Сравнение не является транзитивным (подумайте о бумажных ножницах): это может быть правдой: A> B, B> C, C> A (обратите …

2
Как эффективно найти элемент последовательности Digit Sum?
Просто ради интереса я попытался решить проблему из категории «Недавние» Project Euler ( последовательность цифр суммы ). Но я не могу придумать, как решить проблему эффективно. Проблема заключается в следующем (в исходной последовательности вопросов в начале есть две, но она не меняет последовательность): Последовательность цифр составляет 1,2,4,8,16,23,28,38,49 .... где термин …

2
Нахождение хотя бы двух путей одинаковой длины в ориентированном графе
Предположим , что мы имеем ориентированный граф и два узла A и B . Я хотел бы знать, есть ли уже алгоритмы для расчета следующей задачи решения:G = ( V, E)G=(V,E)G=(V,E)AAAВBB Есть ли хотя бы два пути между и В одинаковой длины?AAAВBB Как насчет сложности? Могу ли я решить это …

1
Без блокировки, постоянное время обновления параллельных древовидных структур данных?
В последнее время я немного читал литературу и нашел довольно интересные структуры данных. Я исследовал различные методы уменьшения времени обновления до худшем случае [1-7].O ( 1 )О(1)\mathcal{O}(1) Недавно я начал изучать структуры данных без блокировок для поддержки эффективного параллельного доступа. Использовались ли какие-либо из этих методов обновления времени худшем случае …

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