Articles of algoritmo

Algoritmo shuffle reversível usando uma chave

Como eu codificaria um algoritmo de shuffle reversível em C # que usa uma chave para embaralhar e pode ser revertido para o estado original? Por exemplo, eu tenho uma string: “Hello world”, como eu posso embaralhá-la para que depois eu possa reverter a string embaralhada de volta para “Hello world”.

Como saber o decimal repetitivo em uma fração?

Eu já sei quando uma fração está repetindo decimais. Aqui está a function. public bool IsRepeatingDecimal { get { if (Numerator % Denominator == 0) return false; var primes = MathAlgorithms.Primes(Denominator); foreach (int n in primes) { if (n != 2 && n != 5) return true; } return false; } } Agora estou tentando […]

Como criar combinações de vários vetores sem loops de codificação em C ++?

Eu tenho vários dados que se parecem com isso: Vector1_elements = T,C,A Vector2_elements = C,G,A Vector3_elements = C,G,T ….. up to … VectorK_elements = … #Note also that the member of each vector is always 3. O que eu quero fazer é criar toda a combinação de elementos no Vector1 através do VectorK. Assim, no […]

Projetar um algoritmo eficiente para classificar 5 chaves distintas em menos de 8 comparações

Projete um algoritmo eficiente para classificar 5 chaves distintas – muito grandes – com menos de 8 comparações no pior caso. Você não pode usar radix sort.

Caminho acíclico mais longo em um gráfico não ponderado direcionado

Qual algoritmo pode ser usado para encontrar o caminho mais longo em um gráfico acíclico direcionado não ponderado?

Algoritmo para saber se duas matrizes têm membros idênticos

Qual é o melhor algoritmo para comparar dois arrays para ver se eles têm os mesmos membros? Suponha que não haja duplicatas, os membros possam estar em qualquer ordem e que nenhum deles seja classificado. compare( [a, b, c, d], [b, a, d, c] ) ==> true compare( [a, b, e], [a, b, c] ) […]

Amostra aleatória ponderada em python

Eu estou procurando uma definição razoável de uma function weighted_sample que não retorna apenas um índice random para uma lista de pesos dados (o que seria algo como def weighted_choice(weights, random=random): “”” Given a list of weights [w_0, w_1, …, w_n-1], return an index i in range(n) with probability proportional to w_i. “”” rnd = […]

Um algoritmo para espaçar retângulos sobrepostos?

Este problema realmente lida com roll-overs, vou generalizar abaixo como tal: Eu tenho uma visão 2D, e eu tenho um número de retângulos dentro de uma área na canvas. Como faço para espalhar essas checkboxs de tal forma que elas não se sobreponham umas às outras, mas apenas ajustá-las com o mínimo de movimento? As […]

Número de contagem de 1s na representação binária

Maneira eficiente de contar o número de 1s na representação binária de um número em O (1) se você tiver memory suficiente para brincar. Esta é uma pergunta da entrevista que encontrei em um fórum online, mas não tinha resposta. Alguém pode sugerir algo, eu não posso pensar em uma maneira de fazê-lo em O […]

Exemplo de O (n!)

O que é um exemplo (no código) de uma function O (n!)? Deve levar o número apropriado de operações para executar em referência a n; isto é, estou perguntando sobre a complexidade do tempo.