complexity-theory- все статьи тега


Каковы различия между NP, NP-Complete и NP-Hard?

в чем разница между NP,NP-Complete и NP-Hard? Я знаю о многих ресурсах по всему интернету. Я хотел бы прочитать ваши объяснения, и причина в том, что они могут отличаться от того, что там, или это там, и я не знаю. ...

Постоянное Амортизированное Время

Что подразумевается под "постоянным амортизированным временем", когда речь идет о временной сложности алгоритма? ...

Как построение кучи может быть o (n) временной сложностью?

может кто-нибудь помочь объяснить, как можно построить кучу сложности O(n)? вставка элемента в кучу составляет O(log n), и вставка повторяется n / 2 раза (остальные являются листьями и не могут нарушать свойство кучи). Итак, это означает, что сложность должна быть O(n log n), Я думаю. другими словами, для каждого элемента мы "heapify", он имеет потенциал, чтобы отфильтровать один раз для каждого уровня для кучи до сих пор (который является log n уровни.) чего мне не хватает? ...

Вычислительная сложность последовательности Фибоначчи

Я понимаю нотацию Big-O, но я не знаю, как вычислить ее для многих функций. В частности, я пытался выяснить вычислительную сложность наивной версии последовательности Фибоначчи: int Fibonacci(int n) { if (n <= 1) return n; else return Fibonacci(n - 1) + Fibonacci(n - 2); } какова вычислительная сложность последовательности Фибоначчи, и как он рассчитывается? ...

Какой самый быстрый алгоритм сортировки связанного списка?

Мне любопытно, если O (N log n) - это лучшее, что может сделать связанный список. ...

Big-oh vs big-theta [дубликат]

Возможные Дубликаты:в чем разница между Θ(n) и O(n)? Мне кажется, что когда люди говорят о сложности алгоритма неофициально, они говорят о big-oh. Но в формальных ситуациях я часто вижу Биг-тета со случайным Биг-о, брошенным. Я знаю математически, в чем разница между ними, но на английском языке, в какой ситуации использование big-oh, когда вы имеете в виду big-theta, будет неправильным, или наоборот (пример алгоритма будет оценен)? бонус: почему люди, казалось бы, всегда используют big ...

B-дерево против хэш-таблицы

в MySQL тип индекса является b-деревом, а доступ к элементу в b-дереве находится в логарифмическом амортизированном времени O(log(n)). С другой стороны, доступ к элементу хэш-таблицы в O(1). почему хэш-таблица не используется вместо b-дерева для доступа к данным внутри базы данных? ...

Алгоритмы сортировки данных известного статистического распределения?

Мне просто пришло в голову, что если вы знаете что-то о распределении (в статистическом смысле) данных для сортировки, производительность алгоритма сортировки может выиграть, если вы учтете эту информацию. Итак, мой вопрос: существуют ли какие-либо алгоритмы сортировки, которые учитывают такую информацию? Насколько они хороши? Edit: пример для уточнения: если вы знаете, что распределение ваших данных является гауссовым, вы можете оценить среднее и в среднем на лету, как вы обрабатываете данные ...