Perguntas com a marcação «algorithm»

92
Quicksort com Python

Eu sou totalmente novo em python e estou tentando implementar o quicksort nele. Alguém poderia me ajudar a completar meu código? Não sei como concatenar os três arrays e imprimi-los. def sort(array=[12,4,5,6,7,3,1,15]): less = [] equal = [] greater = [] if len(array) > 1: pivot =...

91
Tempo polinomial e tempo exponencial

Alguém poderia explicar a diferença entre algoritmos de tempo polinomial, tempo não polinomial e tempo exponencial? Por exemplo, se um algoritmo leva tempo O (n ^ 2), então em qual categoria ele está?

90
Como implementar sistema de tag

Eu queria saber qual é a melhor maneira de implementar um sistema de tags, como o usado no SO. Eu estava pensando nisso, mas não consigo encontrar uma boa solução escalonável. Eu estava pensando em ter uma solução básica de 3 mesas: ter uma tagsmesa, uma articlesmesa e uma...

89
Como o Google pode ser tão rápido?

Bloqueado . Esta pergunta e suas respostas estão bloqueadas porque a pergunta está fora do tópico, mas tem significado histórico. Atualmente não está aceitando novas respostas ou interações. Quais são as tecnologias e decisões de programação que tornam o Google...

89
Operador bit a bit e no lugar do módulo

Sabemos que, por exemplo, o módulo de potência de dois pode ser expresso assim: x % 2 inpower n == x & (2 inpower n - 1). Exemplos: x % 2 == x & 1 x % 4 == x & 3 x % 8 == x & 7 E quanto ao não-poder geral de dois números? Digamos: x% 7 ==?

88
Maneira eficiente de pesquisar um elemento

Recentemente, tive uma entrevista, onde me fizeram uma pergunta " investigativa ". A questão era: Assuma que existe uma matriz de números inteiros (positivos), dos quais cada elemento é ou +1ou -1em relação aos seus elementos adjacentes. Exemplo: array = [4,5,6,5,4,3,2,3,4,5,6,7,8];...

87
como fornecer uma função de troca para minha classe?

Qual é a maneira correta de habilitar meus swapalgoritmos em STL? 1) Membro swap. Does std::swapusar truque SFINAE de usar o membro swap. 2) Autonomia swapno mesmo namespace. 3) Especialização parcial de std::swap. 4) Todas as opções acima. Obrigado. EDIT: Parece que eu não fiz minha...