Популярные вопросы по тегу ALGORITHM

Хорошие примеры, статьи, книги для понимания динамического программирования

... 6 такие проблемы: Getting the lowest possible sum from numbers' difference Итак, не могли бы вы предложить 5 мне хорошие книги или статьи (желательно с примерами с реальным 4 кодом), которые объяснили бы мне, что такое 3 динамическое программ ...

Почему двоичный поиск - это алгоритм «разделяй и властвуй»?

... ответить. Они также не одобрили, что 4 на самом деле это был алгоритм «разделяй 3 и властвуй». Но везде, где я бываю в Интернете, там 2 написано, что это так, поэтому я хотел бы 1 знать, почему и где именно побеждающая час ...

Временная сложность приоритетной очереди в C++

... в кучу (или приоритетную очередь) занимает 3 O(log(n)) время. Принятие n входов и вставка их в приоритетную очередь, какова будет временная сложность операции? O ...

Создают ли переменные, объявленные в цикле, пространственную сложность O (N)?

... ли переменные, объявленные внутри 4 цикла for, который повторяется N раз, увеличивать 3 сложность пространства O (N), даже если 2 эти ...

Как выполнить итерацию по вектору, а также узнать индекс элемента?

... дексе 5 находится этот элемент. Пока я мог придумать 4 два способа for (iterator it= aVector.begin(), int index= 0; it!= aVector.end(); ++it, ++index) о ...

Контекстно-свободные грамматики против контекстно-зависимых грамматик?

... - одиночный 8 нетерминальный символ, а w - строка терминалов 7 и / или нетерминалов. w может быть пустым Контекстно-зависимая грамматика 6 - это формальная грамматика, в которой левая 5 и правая части любых правил пр ...

Вычисление всех подмножеств набора чисел

... ;(); public static ArrayList<Integer> BTSum(int n, ArrayList<Integer> numbers) { if (n == numbers.size()) { for (Integer integer : list) { System.out.print(integer+", "); } System.out.println("********************"); list.removeAll(list); System.out.println(); } else { for (int i = n; i < numbers.size(); i++) { if (i == numbers.size() - ...

Точка в алгоритме многоугольника

... нном многоугольнике 6 из этого link: int pnpoly(int nvert, float *vertx, float *verty, float testx, float testy) { int i, j, c = 0; for (i = 0, j = nvert-1; i < nvert; j = i++) { if ( ((verty[i]>testy) != (verty[j]>testy)) && (testx < (vertx[j]-vertx[i]) * (testy-verty[i]) / (ver ...

Какова временная сложность циклов while?

... аюсь определить временную сложность 6 циклов while и понятия не имею, с чего начать. Я 5 понимаю, как найти класс сложности циклов 4 for, но когда дело доходит до циклов while, я 3 совершенно заблудился. Ес ...

Неявное объявление функции x

... gcc: $ gcc -Wall -std=c99 -pedantic primefactors.c primefactors.c: In function ‘main’: primefactors.c:8:5: warning: implicit declaration of function ‘largestprime’ [-Wimplicit-function-declaration] primefactors.c: At top level: primefactors.c:12:6: error: conflicting types for ‘largestprime’ primefactors.c:8:20: note: previous implicit declaration of ‘largestpr ...

В чем разница между внешней и внутренней сортировкой?

... не понимаю, могут ли входные 2 данные храниться в ...

Можно ли реализовать карту без блокировок в C++

... да, то как? Есть ли там открытый исходный 21 код? РЕДАКТИРОВАТЬ: На самом деле мы используем 20 std :: map для хранения информации о сокетах, мы 19 сделали инкапсуляцию на основе описания 18 файла сокета, чтобы включить некоторую другую 17 необходимую информацию, такую ​​как IP-адрес, порт, тип 16 сокета, tcp или udp и т. Д. Подводя итог, у 15 нас есть глобальная карта, на которой указано, что map<int fileDescriptor, socketInfor*> So ...

Почему константа всегда исключается из анализа большого O?

... чему, я имею в 15 виду, что 2 в этом случае кажется не совсем 14 незначительным. Так что я искал из книги 13 хорошее ясное объяснение. В книге это объясняется 12 следующим образом: "Подумайте, что означает 11 1/2. Фактическое время, чтобы проверить 10 каждое значение сильно зависит от машинной 9 инструкции, которую код преобразуется 8 в, а затем и в скорость, с ...

Как найти победителя в игре в крестики-нолики любого размера?

... -нолики на доске любого 3 размера?» Я слышал, что сложность алгоритма 2 O (1). Имеет ли э ...

Самый эффективный способ перевернуть число

... ла, например Ввод: 3456789 Вывод: 9876543 В C++ есть 6 множество опций со сдвигом и битовыми масками, но 5 какой способ будет наиболее эффективным? Моя 4 платформа: x86_64 Диапазон номеров: XXX - ...

Треугольник: определите, включает ли массив треугольную тройку (кодилированность)

... [2] = 5, A [3] = 1 19 функция должна вернуть 0. Предположим, что: N 18 - целое число в диапазоне [0..100 000]; каждый 17 элемент массива A является целым числом 16 в диапазоне [−2 147 483 648..2 147 483 15 647]. А вот мое решение на C++: int solution(vector<int> &A) { if(A.size()<3) return 0; sort(A.begin(), A.e ...

Треугольник Пересечение треугольника в 3D-пространстве

... реугольника с другим 1 треугольником. Какой алгоритм я м ...

Как исправить начальную и конечную точки в задаче коммивояжера?

... уть через все узлы без ограничения 14 на то, какие узлы являются первыми и последними 13 на пути. Есть ли способ трансформировать 12 проблему так, чтобы конкретный узел можно 11 было гарантировать как начальный узел, а 10 другой узел как конечный узел? Одним из способов 9 было бы добавить I - очень большое расстояние 8 - ко всем расстояниям между этими начальными 7 / конечными узлами и всеми остальными (добавив 6 I дв ...

Различия между временной сложностью и пространственной сложностью?

... i=1 to length(v) print (v[i]) endfor Здесь 5 легко увидеть, что сложность алгоритма с 4 точки зрения времени равна O (n), но мне 3 кажется, что сложность пространства также 2 равна n (также представленная как O (n)?). Мой 1 вопрос: возможно ли, чтобы алгоритм и ...

Объединение двух int в Java

... способ без использования 4 библиотеки java для объединения двух int? Может ...

Как преобразовать десятичное основание (10) в негабинарное основание (-2)?

... равило и как оно работает. Пример: 7(base10)-->11011(base-2) Я просто 1 знаю, что это 7 = (-2)^0*1 + (-2)^1*1 + (-2)^2*0 + (-2)^3*1 + (-2) ...

Равномерно распределяя n точек на сфере

... крибировать, а code example, который я обнаружил, содержал "node [k]", который Я не мог видеть объяснений и разрушил эту возможность. Вторым примером блога была спираль золотого сечения, которая дала мне странные, сгруппированные результаты без четкого способа определения постоянного радиуса. This algorithm из this question кажется, что это мо ...

Временная сложность двух циклов for

... (y;y<x;y++){ //code } } равно 1 n ^ 2 но если бы: for(i;i<x;i++){ ...

NP-Complete VS NP-Hard

... ete 10 и NP-Hard. Ниже я понимаю NP-трудная задача 9 - это задача, которая не решается за полиномиальное 8 время, но может быть проверена за полиномиальное 7 время. NP-Complete задача - это проблема 6 в NP ...

Алгоритмы интерполяции при масштабировании

... оседа, можно 17 использовать при масштабировании, чтобы 16 «заполнить пробелы» между старыми известными 15 точками (пикселями в случае изображений). Но 14 уменьшение масштаба? Я не понимаю, как там 13 можно использовать какой-либо метод интерполяции. Нет 12 пробелов! Я слишком долго зацикливался на 11 этом, ...

Нахождение длины кратчайшего цикла в неориентированном графе

... Может 4 ли кто-нибудь указать встречный пример, для 3 которого этот подход неверен? Что может быть 2 лучшим способом найти кратчайший цикл в 1 неориентированн ...

Какой алгоритм дает подсказки при проверке орфографии?

... начала 7 я подумал, что имеет смысл проверять каждое 6 новое введенное слово (если оно не найдено 5 в словаре) на соответствие Levenshtein distance из каждого другого 4 слова в словаре и возвращать лучшие результаты. Однако 3 ...

Стратегия медианы трех значений

... ора 4 значения разворота при быстрой сортировке? Я 3 читаю его в Интернете, но не могу понять ...

Как выбрать между хеш-таблицей и Trie (префиксным деревом)?

... ое слово), это может 7 быть по существу O (1) (относительно верхней 6 границы). Может быть, самое длинное английское 5 слово состоит из 50 символов? Хеш-таблицы 4 можно быстро найти, как только вы получите индекс. Однако хеширование 3 ключа для получения индекса может легко 2 занять около 50 шагов. Может ли кто-нибудь 1 ...

Реализация c strlen() в одной строке кода

... д с использованием этого термина. После 8 собеседования я спросил своих коллег, и 7 самые опытные из них подарили мне эту работу, которая 6 действительно отлично сработала: size_t str_len (const char *str) { return (*str) ? str_len(++str) + 1 : 0; } Возникает 5 вопрос, возможно ли это ...

Когда мы на самом деле используем Trie?

... .} Затем 16 мы создаем дерево из S и выполняем поиск 15 (очень быстро) У меня вопрос: как мы с 14 самого начала пришли к S? Я имею в виду, прежде 13 чем начать читать о попытках, я представил, что 12 S будет произвольно длинным текстом, например. Отрывок 11 Shakespeare. Тогда с помощью Trie мы могли очень быстро 10 находить нужные объекты. Но, похоже, это 9 не так. Предполагается, что входной отрывок 8 (например, Sh ...

Как преобразовать десятичные дроби в шестнадцатеричные?

... стнадцатеричную дробь? Какие 2 есть методы конвертации и ...

Алгоритм перебора внешней спирали на дискретной двумерной сетке от начала координат

... лиже» к заданной другой точке. Для этого 8 я вызову grid.find_closest_available_point_to(point), который выполнит итерацию по 7 указанной выше спирали и вернет первую пустую 6 и доступную позицию. Итак, сначала он проверит 5 point+[0,0 ...

Почему большой O в pop() отличается от pop (0) в Python

... юбого места в списке 2 Python включает в себя уничтожение этого 1 списка и создание его в ...

Как лучше всего построить строку элементов с разделителями в Java?

... ndWithDelimiter( parameterString, "elementName", "," ); if ( anotherCondition ) parameterString = appendWithDelimiter( parameterString, "anotherElementName", "," ); Я 8 понимаю, что это не особенно эффективно, поскольку 7 повсюду создаются строки, но я стремился 6 к ясности, а не к оптимизации. В Ruby я могу 5 сделать что-то вроде этого, что выглядит 4 гораздо более элегантно: parameterArray = []; ...

C++: преобразование шестнадцатеричного числа в десятичное

... простой способ сделать это, например: int k = 0x265; cout << k << endl; Но 3 с этим я не могу ввести 265. Есть ли способ, чтобы 2 это работало так: ...

Проверьте, содержит ли строка последовательность символов подстроки по порядку, но не обязательно рядом друг с другом

... ну, если первая 8 строка содержит последовательность символов 7 второй строки по порядку, но не обязательно 6 рядом друг с другом. Например, строка: «Я 5 голоден и хочу ...

Максимальная сумма непоследовательных элементов

... тывая массив положительных целых чисел, каков 3 наиболее эфф ...

Временная сложность алгоритма Решета Эратосфена

... ем mark_composite(), будет примерно 4 таким: n/2 + n/3 + n/5 + n/7 + ... + n/97 = O(n^2) И чтобы найти следующее простое число 3 (например, чтобы перейти к 7 после вычеркивания 2 всех чисел, кратных 5), количест ...

Сглаживание данных с датчика

... 45555 На самом 10 деле данные более точны, но я хочу сгладить 9 значение между значением 1,1234 и значением 8 1,2344, потому что для меня это то же самое, я 7 могу использовать целые числа, показывая 6 только «x = 1», но мне нужны десятичные 5 дроби. Также мне нужно показать здесь своего 4 рода «сглаженное» значение. У кого-нибудь 3 есть идеи? Я программирую на C#, но не все 2 функции работают, поэтому мне нужно создать 1 свою ...

std :: lower_bound и std :: find в простом массиве

... r_bound(a,a+6,20); Результат, который 4 я получаю при печати * f, равен 20. То же 3 самое произойдет, если я использую std::find. int a[] = {1,2,3,4,5,6}; int* f = std::find(a,a+6,20); Результат, который 2 я получаю при печати * f, равен 20. Всегда ли возвращаемое значение является исходным аргументом? когда этого не найти? С точки зрения производительности std::lower_boun ...

Как лучше всего найти все комбинации элементов в массиве?

... комбинации элементов 1 в ма ...

Котлин - идиоматический способ удалить повторяющиеся строки из массива?

... ring?> в котлине ...

Как интерполировать строку между двумя другими строками в Python

... 1371.77683353], [ 1202.58908737, 1381.41765447], [ 1210.72465255, 1390.65097106], [ 1227.81309742, 1403.2904646 ], [ 1244.90154229, 1415.92995815], [ 1261.98998716, 1428.56945169], [ 1275.89219696, 1438.21626352], [ 1289.79440676, 1447.86307535], [ 1303.69661656, 1 ...

Python, учитывая массив A из N целых чисел, возвращает наименьшее положительное целое число (больше 0), которое не встречается в A при временной сложности O (n).

... if min(b, default = 0) > 1 or min(b, default = 0) == 0 : min_val = 1 else: min_val = min([b[i-1]+1 for i, x in enumerate(b) if x - b[i - 1] >1], default=b[-1]+1) return min_val Примечание. Это был демонстрационный тест 8 на кодилильность, решение 1 получило 100% и решение 7 2 набрало 77%. Ошибка в "решении2" была 6 вызвана: Тесты производительности -> средняя 5 длина хаотической посл ...

Простое шифрование в java-без ключа / пароля

... адреса, которую 10 можно легко расшифровать без ключа, пароля 9 или дополнительной защиты. например. Я ввожу 8 192.168.1.1 Программа преобразует его в AzlQrEHCSD 7 или другую случайную строку Я ввожу эту строку 6 в программу Он снова конвертируется в 192.168.1.1 Есть 5 ли какой-ниб ...

Простой алгоритм шифрования

... стой алгоритм, такой, чтобы: Мастер 10 отправляет "y", где y = функция (данные, код 9 шифрования). Подчиненное устройство получает 8 «y» и может извлекать данные с помощью data 7 = function2 (y, код шифрования) Я пробовал 6 поиграть с AND, XOR, OR и т. д. и их комбинациями, но 5 не смог понять. Я снова ищу простые алгоритмы. Если 4 вы не возражаете, вы могли бы оказать мне 3 большую услугу и объяснить н ...

Как приобрести замок на ключ

... лучше всего предотвратить одновременное 8 обновление одной записи в наборе "ключ-значение" без 7 блокировки всего набора? Семантически я 6 ищу какую-то блокировку по ключу (в идеале 5 реализация Java, но не обязательно): interface LockByKey { void lock(String key); // acquire an exclu ...

Сравнение строки с несколькими разными строками

... многими строками. Как ...

Дейкстра против Флойда-Уоршалла: поиск оптимального маршрута для всех пар узлов

... 0 ко всем другим узлам, а Флойд-Уоршалл находит 9 оптимальный маршрут для всех пар узлов. У 8 меня вопрос: был бы алгоритм Дейкстры более 7 эффективным, чем алгоритм Флойда, если бы 6 я ...