algorithm- все статьи тега ➜ страница 9


Алгоритмы сортировки данных известного статистического распределения?

Мне просто пришло в голову, что если вы знаете что-то о распределении (в статистическом смысле) данных для сортировки, производительность алгоритма сортировки может выиграть, если вы учтете эту информацию. Итак, мой вопрос: существуют ли какие-либо алгоритмы сортировки, которые учитывают такую информацию? Насколько они хороши? Edit: пример для уточнения: если вы знаете, что распределение ваших данных является гауссовым, вы можете оценить среднее и в среднем на лету, как вы обрабатываете данные ...

Стратегии упрощения математических выражений

у меня есть хорошо сформированное дерево, которое представляет собой математическое выражение. Например, учитывая строку:"1+2-3*4/5", это разбирается в: subtract(add(1,2),divide(multiply(3,4),5)) который выражается как это дерево: то, что я хотел бы иметь возможность сделать, это взять это дерево и уменьшить его как можно больше. В приведенном выше случае, это довольно просто, потому что все числа являются константами. Тем не менее, все начинает становиться сложнее, как только я допуска ...

Проблемы с использованием грубого алгоритма оттенков серого?

поэтому я создал несколько программ для редактирования фотографий в python используя PIL и один из них преобразовывал изображение в оттенки серого (я избегаю использования каких-либо функций из PIL). алгоритм, который я использовал, прост: для каждого пикселя (глубина цвета равна 24) я рассчитал среднее значение R,G и B значения и установите значения RGB в это среднее значение. моя программа производила изображения в оттенках серого, которые казались точными, но я было интересно, если бы я исп ...

Как рассчитывается загрузка ЦП?

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

Создать хэш-код из двух чисел

Я пытаюсь создать функцию быстрого хэш-кода для класса комплексных чисел (a + b) в C#. Я видел неоднократно a.GetHashcode()^b.GetHashCode() метод. Но это даст тот же хэш-код для (a,b) и (b,a). есть ли какой-либо стандартный алгоритм для этого и есть ли какие-либо функции в .Net framework, чтобы помочь? ...

LogLog и HyperLogLog алгоритмы для подсчета больших мощностей

где я могу найти допустимую реализацию алгоритм LogLog? Я попытался реализовать его сам, но мой проект реализации дает странные результаты. здесь это: function LogLog(max_error, max_count) { function log2(x) { return Math.log(x) / Math.LN2; } var m = 1.30 / max_error; var k = Math.ceil(log2(m * m)); m = Math.pow(2, k); var k_comp = 32 - k; var l = log2(log2(max_count / m)); if (isNaN(l)) l = 1; else l = Math.ceil(l); var l_mask = ((1 << ...

Почему бы не использовать сортировку кучи всегда [дубликат]

этот вопрос уже есть ответ здесь: Quicksort против heapsort 11 ответов Превосходство над быстрой сортировки кучи сортировки 5 ответов The Куча Вроде алгоритм сортировки кажется имеют наихудшую сложность o(nlogn) и используют пространство O (1) для операции сортировки. Это выглядит лучше, чем большинство алгоритмов ...

Быстрый способ генерации псевдослучайных битов с заданной вероятностью 0 или 1 для каждого бита

как правило, генератор случайных чисел возвращает поток битов, для которых вероятность наблюдать 0 или 1 в каждой позиции равна (т. е. 50%). Давайте назовем это непредвзятым PRNG. мне нужно сгенерировать строку псевдослучайных битов со следующим свойством: вероятность увидеть 1 в каждой позиции равна p (т. е. вероятность увидеть 0 равна 1-p). Параметр p является вещественным числом от 0 до 1; в моей задаче бывает, что он имеет разрешение 0,5%, т. е. он может принимать значения 0%, 0.5%, 1%, 1.5 ...

Хороший алгоритм и структура данных для поиска слов с отсутствующими буквами?

поэтому мне нужно написать эффективный алгоритм поиска слов с отсутствующими буквами в словаре, и я хочу, чтобы набор возможных слов. например, если у меня есть че??e, я мог бы вернуть эти, те, темы, там.так далее. Мне было интересно, если кто может предложить некоторые структуры данных или алгоритм, который я должен использовать. спасибо! EDIT: Trie слишком малоэффективен и делает его слишком медленным. Любая другая идея изменения? обновление: там будет до двух вопросительных знаков и когд ...

Что сдерживает генетическое программирование?

Я проделал изрядную работу с генетическими алгоритмами довольно успешно и до сих пор игнорировал генетическое программирование. Насколько я знаю, большинство программ остаются написанными программистами, и мне любопытно узнать, что сдерживает генетическое программирование? некоторые возможные объяснения, о которых я подумал: пространство поиска слишком велик, чтобы найти полезные программы среди шума большинств реальные применения не могут поставить достаточные данные к разрешить оценку приг ...

Как преобразовать Int в строку в C# без использования ToString ()?

преобразуйте следующий аргумент int в строку без использования каких-либо собственных функций toString. public string integerToString(int integerPassedIn){ //Your code here } так как все наследуется от Object и Object есть ToString() метод как бы вы преобразовали int до string без использования уроженца ToString() способ? проблема с конкатенацией строк заключается в том, что он будет вызывать ToString() вверх по цепочке, пока он не ударит один или не ударит Object класса. как сд ...

Определение пиковых значений измеряемого сигнала

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

библиотека структур данных javascript

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

Корректность алгоритма Сакамото для нахождения дня недели

Я использую алгоритм Сакамото, чтобы узнать день недели от указанной даты. Может кто-нибудь сказать мне правильность этого алгоритма? Я просто хочу, чтобы это было с 2000 по 2099 год. алгоритм Википедия дана для справки. int dow(int y, int m, int d) { static int t[] = {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4}; y -= m < 3; return (y + y/4 - y/100 + y/400 + t[m-1] + d) % 7; } ...

Алгоритм вычисления числа пересекающихся дисков

дан массив A на N целые числа мы рисуем N диски в 2D плоскости, такие, что i-й диск имеет центр в (0,i) и радиусом A[i]. Мы говорим, что K-й диск и j-й диск пересекаются, если k-й и j-й диски имеют хотя бы одну общую точку. написать функцию int number_of_disc_intersections(int[] A); , который дан массив A описанием N диски, как описано выше, возвращает количество пар пересекающихся дисков. Например,N=6 и A[0] = 1 A[1] = 5 A[2] = 2 A[3] = 1 A[4] = 4 A[5] = 0 есть 11 пар пересекающихся д ...

Алгоритм микширования звука

У меня есть два необработанных звуковых потока, которые мне нужно добавить вместе. Для целей этого вопроса мы можем предположить, что они имеют одинаковый битрейт и битовую глубину (скажем, 16-битный образец, частота дискретизации 44,1 кГц). очевидно, что если я просто добавлю их вместе, я переполню и уменьшу свое 16-битное пространство. Если я сложу их вместе и разделю на два, то громкость каждого уменьшится вдвое, что неверно с акустической точки зрения - если два человека говорят в комнате ...

Сортировка вставки против алгоритмов сортировки пузырьков

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

Как создать доски судоку с уникальными решениями

Как создать доску судоку с уникальным решением? Я думал, что нужно инициализировать случайную доску, а затем удалить некоторые числа. Но мой вопрос в том, как я могу сохранить уникальность решения? ...

Сгенерируйте все уникальные подстроки для данной строки

Дана строка s, каков самый быстрый метод для создания набора всех его уникальных подстрок? пример:str = "aba" мы получили бы substrs={"a", "b", "ab", "ba", "aba"}. наивный алгоритм будет проходить всю строку, генерирующую подстроки в длину 1..n в каждой итерации, приводя к O(n^2) верхняя граница. возможна ли лучшая граница? (это технически домашнее задание, поэтому указатели-только приветствуются как ну) ...

Большая-О сложность куска кода

у меня есть вопрос в разработке алгоритма о сложности. В этот кусок кода и я должен вычислить сложность этого кода. Псевдо-код: for(i=1;i<=n;i++){ j=i do{ k=j; j = j / 2; }while(k is even); } я попробовал этот алгоритм для некоторых чисел. и я получил разные результаты. например, если n = 6, Этот вывод алгоритма выглядит следующим образом i = 1 -> executes 1 time i = 2 -> executes 2 times i = 3 -> executes 1 time i = 4 -> executes 3 times i = 5 -&g ...