Articles of algoritmos

Algoritmo de interseção de lista eficiente

Dadas duas listas (não necessariamente classificadas), qual é o algoritmo não-recursivo mais eficiente para encontrar a interseção dessas listas?

Gerando combinações em c ++

Eu tenho procurado um código-fonte para gerar combinação usando c + +. Eu encontrei alguns códigos avançados para isso, mas isso é bom para apenas um número específico de dados predefinidos. Alguém pode me dar algumas dicas, ou talvez, alguma idéia para gerar combinação. Como exemplo, suponha que o conjunto S = {1, 2, 3, […]

Algoritmos de permutação rápida -> número -> mapeamento de permutação

Eu tenho n elementos. Por exemplo, digamos, 7 elementos, 1234567. Sei que existem 7! = 5040 permutações possíveis destes 7 elementos. Eu quero um algoritmo rápido composto por duas funções: f (número) mapeia um número entre 0 e 5039 para uma permutação única e f ‘(permutação) mapeia a permutação de volta para o número de […]

Algoritmo para gerar todas as permutações possíveis de uma lista?

Digamos que eu tenha uma lista de n elementos, eu sei que existem n! possíveis maneiras de solicitar esses elementos. O que é um algoritmo para gerar todos os pedidos possíveis dessa lista? Exemplo, eu tenho lista [a, b, c]. O algoritmo retornaria [[a, b, c], [a, c, b,], [b, a, c], [b, c, a], […]

Como pesquiso um número em uma matriz 2D classificada da esquerda para a direita e de cima para baixo?

Recentemente, recebi esta pergunta da entrevista e estou curioso para saber se seria uma boa solução. Digamos que eu receba uma matriz 2d onde todos os números na matriz estão em ordem crescente da esquerda para a direita e de cima para baixo. Qual é a melhor maneira de pesquisar e determinar se um número […]

Algoritmo: maneira eficiente de remover inteiros duplicados de um array

Eu tenho esse problema de uma entrevista com a Microsoft. Dado um array de números inteiros randoms, escreva um algoritmo em C que remova números duplicados e retorne os números únicos no array original. Por exemplo: Entrada: {4, 8, 4, 1, 1, 2, 9} Saída: {4, 8, 1, 2, 9, ?, ?} Uma ressalva é […]

Algoritmo para selecionar uma combinação única e aleatória de valores?

Digamos que eu tenha valores distintos e quero selecionar x deles aleatoriamente. O que é um algoritmo eficiente para fazer isso? Eu poderia simplesmente chamar rand() x times, mas o desempenho seria ruim se x , y fosse grande. Note que são necessárias combinações aqui: cada valor deve ter a mesma probabilidade de ser selecionado, […]

Implementação Javascript Array.sort?

Qual algoritmo usa a function JavaScript Array#sort() ? Eu entendo que pode levar todo tipo de argumentos e funções para executar tipos diferentes de tipos, estou simplesmente interessado em qual algoritmo o tipo baunilha usa.

Qual é o melhor algoritmo para verificar se um número é primo?

Apenas um exemplo do que estou procurando: Eu poderia representar cada número ímpar com um bit, por exemplo, para o intervalo dado de números (1, 10), começa às 3: 1110 O dictionary a seguir pode ser espremido mais certo? Eu poderia eleminar múltiplos de cinco com algum trabalho, mas números que terminam com 1, 3, […]

Listando todas as permutações de uma string / inteiro

Uma tarefa comum em entrevistas de programação (não da minha experiência de entrevistas) é pegar uma string ou um inteiro e listar todas as permutações possíveis. Existe um exemplo de como isso é feito e a lógica por trás da solução de tal problema? Eu vi alguns trechos de código, mas eles não foram bem […]