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

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

106
Почему структуры данных так важны в интервью? [закрыто]

Я должен признаться, что я не был настолько силен в структурах данных, когда я закончил колледж. Во время учебы в университетском городке во время моего окончания я был свидетелем того, что большинство крупных технологических компаний, таких как Amazon, Microsoft и т. Д., В основном занимались...

69
Какие алгоритмы / структуры данных я должен «распознавать» и знать по имени? [закрыто]

Я хотел бы считать себя довольно опытным программистом. Я программирую уже более 5 лет. Мое слабое место, хотя это терминология. Я самоучка, поэтому, хотя я знаю, как программировать, я не знаю некоторые из более формальных аспектов информатики. Итак, что такое практические алгоритмы / структуры...

65
EAV - это действительно плохо во всех сценариях?

Я подумываю использовать модель сущность-атрибут-значение (EAV) для некоторых вещей в одном из проектов, но все вопросы об этом в Stack Overflow заканчиваются ответами, называющими EAV анти-паттерном. Но мне интересно, так ли это во всех случаях? Допустим, сущность продукта магазина, у него есть...

64
Данные конфигурации: таблица из одной строки в сравнении с таблицей имя-значение-пара

Допустим, вы пишете приложение, которое может быть настроено пользователем. Для хранения этих «данных конфигурации» в базе данных обычно используются два шаблона. Таблица однорядные CompanyName | StartFullScreen | RefreshSeconds | ... ---------------+-------------------+------------------+--------...

58
Как представить кубик Рубика в структуре данных

Если я пытаюсь смоделировать кубик Рубика , как бы вы создали структуру данных для хранения состояния куба в памяти, с X числом плиток на стороне? Что нужно учитывать: куб может быть любого размера это кубик Рубика, поэтому слои можно вращать...

57
Как хранить «неизвестные» и «отсутствующие» значения в переменной, сохраняя при этом разницу между «неизвестными» и «отсутствующими»?

Считайте это «академическим» вопросом. Мне было интересно время от времени избегать значений NULL, и это пример, когда я не могу найти удовлетворительное решение. Давайте предположим, что я храню измерения там, где в некоторых случаях измерение, как известно, невозможно (или отсутствует). Я хотел...

55
Почему использование MySQL для словарного сайта - плохая идея?

Я планирую спроектировать и настроить базу данных для хранения словарных статей (обычно отдельных слов) и их значения на другом языке. Так, например, глоссарий таблицы должен иметь запись и определение, а каждая запись таблицы имеет ссылку на идентификатор записи, хранящейся в Tag(каждая запись...

49
Почему многие функции, которые возвращают структуры в C, фактически возвращают указатели на структуры?

В чем преимущество возврата указателя на структуру по сравнению с возвратом всей структуры в returnвыражении функции? Я говорю о таких функциях, как fopenи другие низкоуровневые функции, но, вероятно, есть функции более высокого уровня, которые также возвращают указатели на структуры. Я считаю, что...

48
Обработка 1D структуры данных как 2D сетки

Я работаю с собственным классом, который представляет 2D-изображение в виде одномерного массива. Например, если вы хотите изменить один пиксель, вам нужно узнать, как получить индекс из x,yкоординат. Итак, допустим, у нас есть одномерный массив, array1dподобный этому: array1d = [ a, b, c, d, e, f,...

47
Как именно создается абстрактное синтаксическое дерево?

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

45
Насколько необходимо следовать методам защитного программирования для кода, который никогда не станет общедоступным?

Я пишу Java-реализацию карточной игры, поэтому я создал специальный тип Collection, который я называю Zone. Все методы модификации Java Collection не поддерживаются, но в Zone API есть метод move(Zone, Card), который перемещает карту из заданной зоны в себя (выполняется с помощью методов, закрытых...

44
До ООП члены структуры данных оставались открытыми?

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

43
Как мне построить структуру данных для динамического «лабиринта» неограниченного размера?

Я на самом деле не уверен, что «лабиринт» является правильным термином. В основном пользователи начинают с одного, Roomкоторый имеет 4 двери (N, S, E и W). Они могут идти в любом направлении, и каждая последующая комната содержит отдельную комнату с от 1 до 4 дверными проемами, которые ведут в...

42
Откуда происходит термин «красное / черное дерево»?

Красный / Черное Дерево является одним из способов реализации сбалансированного бинарного дерева поиска. Принципы, лежащие в основе этого, имеют смысл для меня, но выбранные цвета - нет. Почему красный и черный, в отличие от любой другой пары цветов или атрибутов в целом? Когда я слышу «красное и...

38
Как я изучаю алгоритмы и структуры данных? [закрыто]

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

37
PHP: когда использовать массивы и когда использовать объекты для конструкций кода, в основном для хранения данных?

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

37
Когда использовать DAG (направленный ациклический граф) в программировании?

Я недавно нашел структуру под названием Ecto . В этом контексте базовый компонент, называемый «плазмой» , является экто направленным ациклическим графом. В эктоплазме может работать планировщик экто. Мне интересно, в чем преимущество этого механизма, и в каких других ситуациях мы можем использовать...

37
Нужно ли понимать алгоритмы и структуры данных, чтобы называться программистом? [закрыто]

Прошло шесть лет с тех пор, как я занимался кодированием. Кодирование во все виды вещей, таких как ActionScript, JavaScript, Java, PHP, Ajax, XML HTML, ASP и т. Д. Я использовал массивы, карты, связанные списки, наборы и т. Д., Где бы я ни работал, таких, как я. Но всякий раз, когда меня...