data-structures- все статьи тега


Группировка массивов в PHP

У меня есть массив из 200 элементов. Я хотел бы вывести массив, но сгруппировать элементы с общим значением. Аналогично группе SQL по методу. Это должно быть относительно легко сделать, но мне также нужен подсчет для групповых элементов. Есть ли у кого-нибудь эффективный способ сделать это? Это будет происходить при каждой загрузке страницы, поэтому мне нужно, чтобы она была быстрой и масштабируемой. Могу ли я предварительно сбросить результаты в нечто вроде Lucene или sqlite, а затем выполнит ...

Реверс бинарного дерева (слева направо)

Я просматривал вопросы для интервью и недавно наткнулся на один, в котором вас спрашивали, Как перевернуть общее бинарное дерево, например, перевернуть его справа налево. Так, например, если бы у нас было бинарное дерево 6 / 3 4 / / 7 3 8 1 Обратное движение создало бы 6 / 4 3 / / 1 8 3 7 Я не смог придумать хорошей реализации, как решить эту проблему. Может ли кто-нибудь предложить хорошие идеи? Спасибо ...

Минимальное количество символов, вставляемых в конец строки, чтобы сделать ее палиндромом

Вопрос вот в чем-- Мы должны найти минимальное количество символов, которые будут вставлены в конец строки, чтобы сделать ее палиндромом. Поэтому, пытаясь решить эту задачу, я решил, что это эквивалентно нахождению самой большой палиндромной подстроки, которая также является суффиксом строки. Я мог бы сделать это в O(n^2) легко, но я ищу решение O(n), которое, вероятно, возможно с помощью модифицированного KMP. Кто-нибудь, пожалуйста, помогите мне понять из. ...

Что такое самонастраивающиеся структуры данных?

Что вы подразумеваете под" самонастраивающимися " структурами данных? Чем они отличаются от других структур данных? Где они используются? Edit: зачем корректировать структуру данных, если выполняются операции, отличные от insert и delete? ...

Нахождение всех точек на расстоянии от конкретного lat long java

У меня есть csv-файл с кучей длинных координат lat, у меня также есть csv-файл с кучей позиций, на которых будет стоять конкретный человек. Для каждой из точек во втором файле мне нужно выяснить, находятся ли они рядом (менее 1 мили) с любой из точек в первом файле. У меня есть около 500 пунктов в каждом из файлов. Я пытаюсь решить эту проблему на java и подумал, что я мог бы использовать что-то вроде чтения первого файла и поместить его в какой - то вид структура, которая легко поддается поис ...

Жесткое кодирование значений и чтение из файла

Это общий вопрос об эффективности жесткого кодирования данных - я пишу программу на Java, которая делает некоторый химический анализ, и мне нужно использовать изотопное содержание различных элементов. Способ, которым я его настроил прямо сейчас, заключается в том, что все значения (которые никогда не нужно изменять) хранятся в качестве конечных полей в моем классе, т. е. static final double C12Abundance = .989; static final double C12Mass = 12; Многие подобные программы хранят этот тип данных ...

Хранение структуры данных C# в базе данных SQL

Я новичок в мире ASP.NET и SQL server, так что прошу простить мое невежество ... Если у меня есть структура данных в C# (например, скажем, вектор, который хранит некоторые строки), можно ли хранить содержимое вектора, как в SQL-таблице? Я хочу сделать это так, чтобы он быстро преобразовал эти данные обратно в векторную форму как можно быстрее, не создавая его элемент за элементом. Почти как запись двоичных данных в файл, а затем чтение и копирование в него. выделенная структура в с. Я создал т ...

Коллекции структур данных PHP (Java-подобных)

Я задаюсь вопросом о достоинствах создания небольшой библиотеки, вероятно, для личного использования, которая определяет несколько структур данных, таких как связанные списки, деревья (Binary, AVL и т. д...), Хэш-таблицы поиска и тому подобное. Некоторые из них будут построены поверх собственного массива PHP, поскольку он действует как многие из этих типов, а некоторые потенциально не будут. Мой вопрос в том, действительно ли имеет смысл строить какие - либо из этих классов-особенно те, которы ...

Как разделить список по условию с помощью потоков Java 8

Рассмотрим следующий код: List<Integer> odd = new ArrayList<Integer>(); List<Integer> even = null; List<Integer> myList = Arrays.asList(1,2,3,4,5,6,7,8,9,10); even = myList.stream() .filter(item -> { if(item%2 == 0) { return true;} else { odd.add(item); return false; } }) .collect(Collectors.toList()); Здес ...

Что такое вероятностные структуры данных?

Я читал о структурах данных, таких как фильтры Блума и списки пропусков. Каковы общие характеристики вероятностных структур данных и для чего они используются? ...

Python-эффективное представление пикселей и связанных с ними значений

Я использую python для работы с большими (приблизительно 2000 x 2000) матрицами, где каждая I, J точка в матрице представляет собой один пиксель. Сами матрицы разрежены (то есть значительная их часть будет иметь нулевые значения), но при их обновлении они, как правило, являются операциями инкремента, для большого числа соседних пикселей в прямоугольном "блоке", а не случайных пикселей здесь или там (свойство, которое я в настоящее время не использую в своих интересах..). Боюсь, немного новеньк ...

Разделить список на подсписки с помощью LINQ

есть ли способ я могу разделить List<SomeObject> в несколько отдельных списков SomeObject, используя индекс элемента в качестве разделителя каждой сплит? позвольте мне привести следующий пример: у меня есть List<SomeObject> и мне нужен List<List<SomeObject>> или List<SomeObject>[], так что каждый из этих результирующих списков будет содержать группу из 3 элементов исходного списка (последовательно). например.: Исходный Список: [a, g, e, w, p, s, q, f, x, y, i, ...

Эквивалент JavaScript Hashmap

как было ясно в обновлении 3 на этот ответ, это обозначение: var hash = {}; hash[X] фактически не хэширует объект X; он на самом деле просто преобразует X в строку (через .toString() если это объект или некоторые другие встроенные преобразования для различных примитивных типов), а затем ищет эту строку, не хэшируя ее, в "hash". Равенство объектов также не проверяется - если два разных объекта имеют одинаковое преобразование строк, они просто перезапишут каждый другой. учитывая это-существуют ...

Что такое инвариант цикла?

Я читаю" введение в алгоритм " CLR. и авторы говорят об инвариантах цикла, в главе 2 (сортировка вставки). Я понятия не имею, что это значит. ...

Древовидная структура данных в C#

Я искал структуру данных дерева или графика в C#, но я думаю, что ее нет. обширное исследование структур данных с использованием C# 2.0 объясняет немного о том, почему. Есть ли удобная библиотека, которая обычно используется для обеспечения этой функциональности? Возможно, через стратегическую схему решить вопросы, представленные в статье. Я чувствую себя немного глупо, реализуя свое собственное дерево, так же, как я бы реализовал свой собственный ArrayList. Я просто хочу общее дерево, ко ...

Пропустить список и бинарное дерево поиска

Я недавно наткнулся на структуру данных, известную как пропустить. Похоже, что он имеет очень похожее поведение на двоичное дерево поиска. Почему вы хотите использовать список пропусков над двоичным деревом поиска? ...

Массив против связанного списка

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

Java: как преобразовать список в карту

недавно у меня был разговор с коллегой о том, что было бы оптимальным способом конвертировать List to Map в Java и если есть какие-то определенные выгоды. Я хочу знать оптимальный подход преобразования и был бы очень признателен, если кто-нибудь может направлять меня. это хороший подход: List<Object[]> results; Map<Integer, String> resultsMap = new HashMap<Integer, String>(); for (Object[] o : results) { resultsMap.put((Integer) o[0], (String) o[1]); } ...

Как бы вы реализовали кэш LRU в Java?

пожалуйста, не говорите EHCache или OSCache и т. д. Предположим, что для целей этого вопроса я хочу реализовать свой собственный, используя только SDK (обучение на практике). Учитывая, что кэш будет использоваться в многопоточной среде, какие структуры данных вы бы использовали? Я уже реализовал один с помощью LinkedHashMap и коллекции#synchronizedMap, но мне любопытно, будут ли какие-либо из новых параллельных коллекций лучшими кандидатами. обновление: я был просто читаю Yegge это когда я наше ...

Проверьте, содержит ли список определенное значение в Clojure

каков наилучший способ проверить, содержит ли список заданное значение в Clojure? в частности, поведение contains? в настоящее время сбивает меня с толку: (contains? '(100 101 102) 101) => false я мог бы, очевидно, написать простую функцию для прохождения списка и проверки на равенство, но наверняка должен быть стандартный способ сделать это? ...