Вопросы с тегом «data-structures»

Вопросы относительно эффективного хранения и представления данных в программном приложении.

3
Почему Haskell и Scheme используют односвязные списки?
Двусвязный список имеет минимальные накладные расходы (просто еще один указатель на ячейку) и позволяет добавлять к обоим концам, переходить назад и вперед и, как правило, получать массу удовольствия.

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

3
Должны ли связанные списки всегда иметь хвостовой указатель?
Мое понимание... Преимущества: Вставка в конце O (1) вместо O (N). Если список является двусвязным списком, то удаление с конца также означает O (1) вместо O (N). Недостаток: Занимает тривиальное количество дополнительной памяти: 4-8 байт . Исполнитель должен следить за хвостом. Глядя на эти преимущества и недостатки, я не могу …

2
Какую структуру данных вы бы использовали для представления органического соединения?
Есть ли хорошие структуры данных, которые можно использовать для представления молекулы? Я подумал, может быть, я представляю его как График, превращая каждый атом в вершину, однако для органических соединений характерно наличие большого количества атомов углерода и водорода. Как бы вы это посчитали? Есть ли хороший способ для представления молекул, но …

2
Можно ли ускорить хэш-таблицу, используя двоичные деревья поиска для раздельного связывания?
Я хочу реализовать хеш-таблицу с использованием деревьев двоичного поиска, чтобы уменьшить сложность поиска в процессе раздельного связывания с O (n) (используя связанный список) до O (log n) (используя BST). Можно ли это сделать, и если да, то как? Было бы легче понять, если решение шаг за шагом, реализация логики. Я …

2
Как представить граф с несколькими ребрами, разрешенными между узлами и ребрами, которые могут выборочно исчезать
Я пытаюсь выяснить, какую структуру данных использовать для моделирования гипотетического, идеализированного использования сети. В моем сценарии несколько пользователей, которые враждебны друг другу, все пытаются сформировать сети компьютеров, где все потенциальные соединения известны. Компьютеры, к которым должен подключиться один пользователь, могут отличаться от компьютеров, к которым должен подключаться другой пользователь; пользователю …

2
Почему Python использует хеш-таблицу для реализации dict, а не Red-Black Tree? [закрыто]
Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 6 лет назад . Почему Python использует хеш-таблицу для реализации dict, а не Red-Black Tree? …

3
С архитектурной точки зрения, устраняет ли необходимость в отдельном слое доступа к данным уровень абстракции базы данных, такой как Microsoft Entity Framework?
Как это было В течение многих лет я организовывал свои программные решения как таковые: Уровень доступа к данным (DAL) для отвлечения бизнеса от доступа к данным Уровень бизнес-логики (BLL) для применения бизнес-правил к наборам данных, обработки аутентификации и т. Д. Утилиты (Util) - это просто библиотека общих утилитных методов, которые …

5
Структуры данных в функциональном программировании
В настоящее время я играю с LISP (особенно Scheme и Clojure), и мне интересно, как обрабатываются типичные структуры данных в функциональных языках программирования. Например, скажем, я хотел бы решить проблему, используя алгоритм поиска пути к графу. Как обычно можно представить этот граф на функциональном языке программирования (в первую очередь интересующемся …

5
Какую структуру данных я должен использовать для этой стратегии кэширования?
Я работаю над приложением .NET 4.0, которое выполняет довольно дорогие вычисления для двух двойных значений, возвращая двойное. Этот расчет выполняется для каждого из нескольких тысяч предметов . Эти вычисления выполняются в Taskпотоке потоков. Некоторые предварительные тесты показали, что одни и те же вычисления выполняются снова и снова, поэтому я бы …

4
Почему история MS Data Access так раздроблена? Это природа доступа к данным или просто MS?
Этот вопрос StackOverflow спрашивает, «где я могу получить Microsoft.Data.Objects» Получается, что ответ был, вероятно, в CTP4 (сначала код) версии Entity Framework 4 Однако там было много догадок. Включая System.Data Entity Framework Microsoft.ApplicationBlocks.Data Microsoft.Practices.EnterpriseLibrary.Data 10 лет назад, если кто-то задавал подобный вопрос, он мог получить DAO, RDO, ADO. Это просто природа …

2
Обходной путь для выполнения операций над двусвязными или циклическими структурами данных в языках с неизменяемыми данными
Я хотел бы узнать, как создавать графики и выполнять некоторые локальные операции над ними в Haskell, но этот вопрос не является специфическим для Haskell, и вместо графиков мы можем рассмотреть двусвязные списки. Вопрос: Каким был бы идиоматический или рекомендуемый способ реализации двусвязного списка (или другой двусвязной или круговой структуры данных) …

1
Алгоритм / структура данных, чтобы ответить «какие рецепты я могу сделать с этим набором ингредиентов?»
Формально пусть s ( U , Q ) = { V | V ∈ U и V ⊆ Q }, где U , Q и V представляют наборы, а U , более конкретно, представляет набор множеств. Для примера, U может быть набором (наборов) ингредиентов, необходимых для различных рецептов в кулинарной …

3
Что такое Библия Хеширования?
Есть ли похожая на Cormen ссылка на хеши и хеширование? Эта конкретная структура почему-то привлекла к себе мало внимания в моем образовании по CS, но я бы хотел узнать больше, поскольку они, кажется, повсюду Я знаю, что Кормен покрывает это, но я ищу что-то более специализированное и углубленное.

4
Хороший стиль кода для повсеместной проверки данных?
У меня есть проект, достаточно большой по размеру, и я не могу больше держать в голове каждый аспект. Я имею дело с рядом классов и функций, и я передаю данные. Со временем я заметил, что получаю ошибки, потому что забыл, какую точную форму должны иметь данные, когда я передаю их …

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