Результаты поиска по запросу "heap"

1 ответ

 Оператор довольно прост, он принимает значение с правой стороны и присваивает значение переменной с левой стороны. Если это ссылочный тип, значение является ссылкой, так что это то, что назначено.

лько недель назад я обнаружил, что строки в C # определяются как ссылочные типы, а не типы значений. Первоначально я был озадачен этим, но затем после некоторого прочтения я внезапно понял, почему важно хранить строки в куче, а не в стеке ...

3 ответа

Конечно я могу. Fibonacci Heap имеет преимущество перед Binary Heap при выполнении операций lowerKey и insert, также она имеет одинаковую сложность для extractMin, но эта операция занимает гораздо больше времени для FH, чем для BH, поскольку она консолидирует внутренний лес дерева. Так что, если у вас есть очень немного lowerKey, то он медленнее, чем обычная двоичная куча. Для некоторых специальных графов это относится к алгоритму Дейкстры.

трел на различные виды структур данных кучи. Куча Фибоначчи, кажется, имеет лучшую сложность в худшем случае для (1) вставки, (2) удаления и (2) нахождения минимального элемента. Я обнаружил, что в Java есть классPriorityQueue это ...

5 ответов

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

я есть объект (A), у которого есть список, состоящий из объектов (B). Объекты в списке (B) являются указателями, но должен ли сам список быть указателем? Я перехожу с Java на C ++ и до сих пор не полностью привык к стеку / куче. Список не будет ...

ТОП публикаций

5 ответов

Как увеличить размер кучи Java программно

У меня есть Java-приложение для поиска файлов, и оно обычно достигает предела кучи по умолчанию довольно скоро. У меня не будет доступа ко всем системам, в которых он будет установлен, поэтому я хочу увеличить размер кучи JVM в самом приложении. ...

2 ответа

Первоначальный вопрос подразумевал, что массивы кучи работают медленнее, чем массивы стеков. К сожалению, причина такой медлительности связана с частным случаем столкновения строк кэша в многопоточных приложениях. Это не оправдывает предположение, что в целом массивы кучи работают медленнее, чем массивы стеков. В большинстве случаев нет существенной разницы в производительности, особенно когда массивы намного больше, чем размер строки кэша. Часто может иметь место обратное, поскольку использование выделяемых массивов кучи, нацеленных на требуемый размер, может привести к преимуществам производительности по сравнению с массивами с фиксированным размером большего размера, которые требуют большего объема памяти.

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

1 ответ

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

ел бы сохранить набор объектов в куче мин, определив пользовательскую функцию сравнения. Я вижу, что есть модуль heapq, доступный как часть дистрибутива Python. Есть ли способ использовать пользовательский компаратор с этим модулем? Если нет, то ...

8 ответов

Если бы мне пришлось делать это с BST, мне потребовалось бы n (n) вставка в худшем случае. (Скажем, первое значение очень меньше, а все остальные идут последовательно все длиннее и длиннее, а дерево охватывает только правого или левого потомка. в случае все меньшего и меньшего. Мин потребовалось бы время O (1), но я снова должен был уравновесить. Таким образом, из моей ситуации и всех приведенных выше ответов я получаю, когда вы только после того, как значения на минимальной или максимальной приоритетной основе идут для кучи.

разница между кучей и BST? Когда использовать кучу, а когда использовать BST? Если вы хотите отсортировать элементы по порядку, лучше ли BST по сравнению с кучей?

4 ответа

Ограничение размера кучи в C

У меня есть сомнения относительно кучи в диаграмме компоновки выполнения программы на C-программе. Я знаю, что вся динамически выделяемая память выделяется в куче, которая динамически увеличивается. Но я хотел бы знать, каков максимальный размер ...

17 ответов

разница между двумя

кнулся на вопрос переполнения стекаУтечка памяти при использовании std :: string при использовании std :: list <std :: string> [https://stackoverflow.com/q/3428750/211563], а такжеодин из ...

2 ответа

Дамп кучи не является дампом ядра. Поэтому вы должны открыть файл .hprof как дамп кучи в VisualVM.

я есть дамп кучи .hprof, сгенерированный из JVM OutOfMemory (версия JDK 1.5). Когда я пытаюсь добавить этот файл в VisualVM, он говорит, что файл не является допустимым дампом ядра. Однако я могу запустить Jhat для этого файла дампа без ...