Вопросы с тегом «algorithms»

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


2
Имитация вероятности 1 из 2 ^ N с менее чем N случайными битами
Скажем, мне нужно смоделировать следующее дискретное распределение: P(X=k)={12N,1−12N,if k=1if k=0P(X=k)={12N,if k=11−12N,if k=0 P(X = k) = \begin{cases} \frac{1}{2^N}, & \text{if $k = 1$} \\ 1 - \frac{1}{2^N}, & \text{if $k = 0$} \end{cases} Наиболее очевидный способ - нарисовать случайных битов и проверить, все ли они равны 0 (или 1 ). …

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

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

1
Хеш-таблицы против бинарных деревьев
При реализации словаря («Я хочу просмотреть данные клиентов по их идентификаторам»), типичными структурами данных являются хеш-таблицы и двоичные деревья поиска. Я знаю, например, что библиотека C ++ STL реализует словари (они называют их картами), используя (сбалансированные) деревья двоичного поиска, а .NET Framework использует хеш-таблицы. Каковы преимущества и недостатки этих структур …

7
Различия и отношения между рандомизированными и недетерминированными алгоритмами?
Какие различия и отношения существуют между рандомизированными алгоритмами и недетерминированными алгоритмами? Из Википедии Рандомизированное алгоритм представляет собой алгоритм , который использует степень случайности как часть своей логики. Алгоритм обычно использует равномерно случайные биты в качестве вспомогательного входа для управления его поведением в надежде на достижение хорошей производительности в «среднем случае» …

4
Перечислите все неизоморфные графы определенного размера.
Я хотел бы перечислить все неориентированные графы размера , но мне нужен только один экземпляр каждого класса изоморфизма . Другими словами, я хочу перечислить все неизоморфные (неориентированные) графы по n вершинам. Как я могу это сделать?NnnNnn Точнее, я хочу алгоритм, который будет генерировать последовательность неориентированных графов со следующим свойством: для …

2
Где взять графики для проверки моих алгоритмов поиска?
Я реализую набор алгоритмов поиска пути, таких как Dijkstra, Depth First и т. Д. Сначала я использовал пару самодельных графиков, но теперь я хотел бы пойти дальше, и поэтому я ищу либо графики, используемые в тестах; графики городов реального мира (или способ загрузки информации такого рода с карт Google или …

1
Насколько сложно считать количество простых путей между двумя узлами в ориентированном графе?
Существует простой полиномиальный алгоритм, позволяющий определить, существует ли путь между двумя узлами в ориентированном графе (просто выполните обычный обход графа с, скажем, поиском по глубине). Однако, на удивление, проблема становится намного сложнее, если вместо проверки существования мы хотим посчитать количество путей. Если мы разрешаем путям повторно использовать вершины, то существует …

4
Как определить вероятные связи в социальной сети?
Мне любопытно определить подход к алгоритму «предложенных друзей». У Facebook есть функция, с помощью которой он будет рекомендовать вам людей, с которыми, по его мнению, вы можете быть знакомы. Эти пользователи обычно (исключая крайние случаи, когда пользователь специально рекомендует друга ) имеют очень похожую сеть на себя. То есть количество …


2
Как эффективно определить, является ли данная лестница действительной?
В моем местном сквош-клубе есть лестница, которая работает следующим образом. В начале сезона мы строим таблицу с именами каждого члена клуба на отдельной строке. Затем мы записываем количество выигранных игр и количество игр, сыгранных рядом с каждым именем (в форме: игрок выигрывает / игры). Таким образом, в начале сезона таблица …

2
Почему пустой тип C не аналогичен пустому / нижнему типу?
Википедия, а также другие источники, которые я обнаружил в списке voidтипа C как тип единицы, а не пустой тип. Мне кажется, что это сбивает с толку, так как мне кажется, что оно voidлучше подходит под определение пустого / нижнего типа voidНасколько я могу судить, ценности не обитают . Функция с …
28 type-theory  c  logic  modal-logic  coq  equality  coinduction  artificial-intelligence  computer-architecture  compilers  asymptotics  formal-languages  asymptotics  landau-notation  asymptotics  turing-machines  optimization  decision-problem  rice-theorem  algorithms  arithmetic  floating-point  automata  finite-automata  data-structures  search-trees  balanced-search-trees  complexity-theory  asymptotics  amortized-analysis  complexity-theory  graphs  np-complete  reductions  np-hard  algorithms  string-metrics  computability  artificial-intelligence  halting-problem  turing-machines  computation-models  graph-theory  terminology  complexity-theory  decision-problem  polynomial-time  algorithms  algorithm-analysis  optimization  runtime-analysis  loops  turing-machines  computation-models  recurrence-relation  master-theorem  complexity-theory  asymptotics  parallel-computing  landau-notation  terminology  optimization  decision-problem  complexity-theory  polynomial-time  counting  coding-theory  permutations  encoding-scheme  error-correcting-codes  machine-learning  natural-language-processing  algorithms  graphs  social-networks  network-analysis  relational-algebra  constraint-satisfaction  polymorphisms  algorithms  graphs  trees 

3
Почему выборка сортируется быстрее, чем пузырьковая?
В Википедии написано, что "... сортировка выбора почти всегда превосходит сортировку по пузырькам и сортировку по гномам". Кто-нибудь, пожалуйста, объясните мне, почему сортировка выбора считается быстрее, чем сортировка пузырьком, даже если они оба имеют: В худшем случае сложность времени : O ( n2)O(n2)\mathcal O(n^2) Количество сравнений : O ( n2)O(n2)\mathcal …

1
Какие комбинации до, после и по порядку секвенизации являются уникальными?
Мы знаем пост-заказ, post L(x) => [x] post N(x,l,r) => (post l) ++ (post r) ++ [x] и предварительный заказ pre L(x) => [x] pre N(x,l,r) => [x] ++ (pre l) ++ (pre r) и в порядке обхода соотв. sequentialisation. in L(x) => [x] in N(x,l,r) => (in l) ++ …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.