algorithm- все статьи тега
Максимальная сумма двойного среза
Недавно я попытался решить проблему максимальной суммы двойного среза в codility, которая является вариантом проблемы максимального среза. Мое решение состояло в том, чтобы искать срез, который имеет максимальное значение, когда его минимальное значение вынимается. Поэтому я реализовал максимальный срез, но на текущем срезе вынул минимальное число. Мой балл был 61 из 100, так как он не прошел во время некоторых тестов, в основном тестов на массиве, включая как отрицательные, так и позиционные ч ...
Как проверить код BCH (15,11,1) / контрольную сумму для спутниковой системы BDS / Beidou
В PDF http://www.beidou.gov.cn/attach/2012/12/27/201212273da29c5eb8274deb8cd2b178228ba2bd.pdf Глава 5 (стр. 9 и далее) ВСН(15,11,1) код для системы Beidou описано. Я пытаюсь реализовать использование этого кода для проверки ошибок (т. е. я хочу только проверить информацию о четности - мне не нужна возможность исправления ошибок). В идеале я ищу процедуру, которая получает 15 битов и возвращает соответствующие 4 бита четности. Я проверил следующий код, но не мог заставить его делать то, что я х ...
C# Фильтровать Элементы В Списке По Нескольким Критериям
Во-первых, какова моя ситуация здесь... У моего объекта SomeObject есть свойство string Status, которое меня интересует для этого сценария. Свойство Status может содержать значения" открыто"," закрыто"," готово " в точности. у меня есть метод под названием FilterObjects, который возвращает List<SomeObject> метод принимает аргумент, такой же, как и его возвращаемый тип, List<SomeObject> Метод должен фильтровать в соответствии со следующими случаями, описанными ниже, и возвращать ...
Нахождение максимума для каждого окна размера k в массиве
Учитывая массив размера n и k, как найти максимум для каждого смежного подмассива размера k? Например arr = 1 5 2 6 3 1 24 7 k = 3 ans = 5 6 6 6 24 24 Я думал о том, чтобы иметь массив размера k и каждый шаг выселять последний элемент и добавлять новый элемент и находить максимум среди этого. Это приводит к времени выполнения O(nk). Есть ли лучший способ сделать это? ...
Поиск алгоритма слияния кортежей, содержащих повторяющиеся поля, в списке кортежей
Я пытаюсь найти лучший способ справиться с тем, что на первый взгляд кажется простой задачей в python 2.7. У меня есть список, содержащий кортежи. Каждый кортеж содержит 2 словаря, каждый с 2 полями: "alt" и "id". "id" всегда один и тот же для каждого элемента в списке и в основном игнорируется для этого вопроса. Это выглядит примерно так: [ ({id:1, alt: 10},{id:1, alt: 12}), ({id:1, alt: 8},{id:1, alt: 9}), ({id:1, alt: 9},{id:1, alt: 10}) ] Иногда значение поля " alt "словаря 1-in ...
Какова наихудшая сложность для сортировки ведер?
Я только что прочитал страницу Википедии Осортировке ведер . В этой статье они говорят, что наихудшим случаем сложности является O(n2). Но я думал, что наихудшая сложность - это O (n + k), где k-количество ведер. Вот как я вычисляю эту сложность: добавьте элемент в корзину. Используя связанный список, Это O (1) перебираем список и помещаем элементы в правильное ведро = O(n) слияние ведер = O (k) O (1) * O (n) + O (k) = O (n + k) Я что-то упустил? ...
Хмм алгоритм распознавания жестов
Я хочу разработать приложение для распознавания жестов с помощью Kinect и hidden Markov models. Я смотрел учебник здесь: хм лекция Но я не знаю, с чего начать. Что такое набор состояний и как нормализовать данные, чтобы иметь возможность реализовать HMM обучение? Я знаю (более или менее), как это должно быть сделано для сигналов и для простых случаев "слева направо", но трехмерное пространство немного смущает меня. Может ли кто-нибудь описать, как это должно было начаться? Может ли кто-нибудь ...
Нахождение точки пересечения прямой и кубического сплайна
Мне нужен способ программно найти точку пересечения между прямой f (x), которая берет начало от начала координат, и кубическим сплайном, определенным 4 точками. Линия гарантированно пересекает центральный сегмент сплайна, между X1 и X2. Я попробовал несколько подходов, но, похоже, не могу получить ожидаемого результата. Я подозреваю, что моя проблема кроется где-то в моем обращении с комплексными числами. Может ли кто-нибудь найти проблему с моим кодом, или предложить другой подход? pr ...
OpenCV: как определить, есть ли в видео быстро движущийся объект?
Как лучше всего обнаружить быстро движущийся объект с помощью OpenCV? Скажем, у меня есть 5 случайных видеофайлов: 1) видеозапись толпы, идущих людей, статическая камера. 2) видео кота, играющего с мячом, дрожащая камера iPhone. 3) видеозапись интервьюируемого лица. Статическая камера. 4) анимация (3D) быстро движущегося автомобиля, фон размыт и т. д. и т.д. 5) размытое видео, снятое камерой iPhone (просто камера помахала вокруг, ничего не видно). Поэтому я хотел бы чтобы изолировать video5 ...
Минимальное связующее дерево. уникальный мин край против не уникального доказательства
Итак, у меня есть упражнение, которое я должен доказать или опровергнуть: 1) Если e-минимальное весовое ребро в Связном графе G такое, что не все ребра обязательно различны, то каждое минимальное остовное дерево G содержит e 2) то же, что и 1), но теперь все веса ребер различны. Итак, интуитивно я понимаю, что для 1) поскольку не все веса ребер различны, то возможно, что вершина имеет путь с ребром e, но также и другое ребро e_1 такое, что если weight (e) = weight (e_1), то существует связу ...
Оптимизация этого динамического программного решения
Задача: Вам дается массив m размера n, где каждое значение m состоит из веса w и процента p. m = [m0, m1, m2, ... , mn] = [[m0w, m0p], [m1w, m1p], [m2w, m2p], ..., [mnw, mnp] ] Поэтому мы представим это в python в виде списка списков. Затем мы пытаемся найти минимальное значение этой функции: def minimize_me(m): t = 0 w = 1 for i in range(len(m)): current = m[i] t += w * current[0] w *= current[1] return t , где единственное, что мы можем из ...
Сортировка четырех точек по часовой стрелке
Четыре 2D точки в массиве. Мне нужно отсортировать их по часовой стрелке. Я думаю, что это может быть сделано только с помощью одной операции подкачки, но я не смог сделать это формально. правка: в моем случае четыре точки представляют собой выпуклый многоугольник. Правка: четыре точки являются вершинами выпуклого многоугольника. Они не должны быть в порядке. ...
Поиск всех несвязанных подграфов в графе
У меня есть граф, который содержит неизвестное число несвязанных подграфов. Что такое хороший алгоритм (или библиотека Java), чтобы найти их все? ...
Группировка массивов в PHP
У меня есть массив из 200 элементов. Я хотел бы вывести массив, но сгруппировать элементы с общим значением. Аналогично группе SQL по методу. Это должно быть относительно легко сделать, но мне также нужен подсчет для групповых элементов. Есть ли у кого-нибудь эффективный способ сделать это? Это будет происходить при каждой загрузке страницы, поэтому мне нужно, чтобы она была быстрой и масштабируемой. Могу ли я предварительно сбросить результаты в нечто вроде Lucene или sqlite, а затем выполнит ...
Математика-3D позиционирование / мультилатерация
У меня есть проблема, связанная с 3d - позиционированием-что-то вроде GPS. Учитывая набор известных трехмерных координат (x, y, z) и их расстояния d от неизвестной точки, я хочу найти неизвестную точку. Опорных точек может быть сколько угодно, но их будет как минимум четыре. Так, например, точки имеют формат (x, y, z, d). Я мог бы: (1,0,0,1) (0,2,0,2) (0,0,3,3) (0,3,4,5) И здесь неизвестная точка была бы (0,0,0,0). Как лучше всего это сделать? Есть ли существующее библиотека, поддерживающая ...
Когда мы должны использовать Radix sort?
Похоже, что Radix sort имеет очень хорошую среднюю производительность, т. е. O (kN): http://en.wikipedia.org/wiki/Radix_sort Но, похоже, большинство людей все еще используют быструю сортировку, не так ли? ...
C# переопределение метода GetHashCode
В этом примере плакат переопределил метод get hash code. Я понимаю, что это было сделано для того, чтобы обеспечить лучшее хэш-значение для возвращаемого объекта, уменьшить количество коллизий и, следовательно, уменьшить количество случаев, когда необходимо будет вызвать Equals(). Что я хотел бы знать, так это то, как был вычислен этот алгоритм: return 17 + 31 * CurrentState.GetHashCode() + 31 * Command.GetHashCode(); Есть ли какая-то особая причина, по которой были выбраны эти числа? Мог ...
Решение алгоритма сокращения строки
Я готовлюсь к интервью, которое у меня в понедельник, и я нашел эту проблему, чтобы решить, называемую " сокращение строки". Задача формулируется следующим образом: Учитывая строку, состоящую из a, b и c, мы можем выполнить следующее операция: Возьмите любые два соседних различных символа и замените их с третьим персонажем. Например, если " А " и " с " соседние, их можно заменить на "б". Что такое самая маленькая струна, которая может результат применения эта операция повторялась не ...
Каков наилучший способ распараллеливания алгоритма преобразования Хафа?
В линейном преобразовании Хоу для каждого пикселя ребра мы находим соответствующие Rho и тета в пространстве параметров Хоу. Аккумулятор для Ро и тета должен быть глобальным. Если мы хотим распараллелить алгоритм, как лучше всего разделить пространство аккумулятора? ...
найти уникальный выход, основанный на двух входах? [дубликат]
На этот вопрос уже есть ответ здесь: отображение двух целых чисел в одно уникальным и детерминированным способом 15 ответов Мне нужно найти способ, такой, что пользователь должен ввести 2 числа (int) и для каждого другого значения один выход (int предпочтительно!) возвращенный. Скажем, пользователь вводит 6, 8 он возвращает k, когда пользователь вводит что-либо еще подобно 6,7 или 9,8 или любому другом ...