Software  
 
Rede de conhecimento computador >> Software >> Fazer backup de dados >> Content
Qual é a complexidade do tempo do algoritmo de retrocesso?
A complexidade do tempo dos algoritmos de retrocesso é geralmente exponencial , especificamente frequentemente expresso como o (b^d) , onde:

* b é o fator de ramificação (o número de opções possíveis em cada ponto de decisão).
* d é a profundidade da árvore de pesquisa (o número máximo de decisões que precisam ser tomadas para chegar a uma solução).

Explicação:

O backtracking explora todas as soluções possíveis, construindo sistematicamente uma solução candidata uma etapa de cada vez. A cada etapa, ele verifica se o candidato atual é promissor (ou seja, se poderia levar a uma solução válida). Se o candidato for promissor, o algoritmo explora recursivamente mais opções. Se o candidato não for promissor (um "beco sem saída"), o algoritmo * retorna * para a etapa anterior e tenta uma escolha diferente.

Como o algoritmo explora uma árvore de possibilidades, e o número de galhos pode crescer rapidamente, a complexidade do tempo pode se tornar muito grande, especialmente à medida que a profundidade `d 'aumenta.

Por que exponencial?

Pense nisso como uma pesquisa de árvore. Se cada nó na árvore tiver `B '(fator de ramificação` b`) e a profundidade máxima da árvore é `d`, então, na pior das hipóteses, você pode potencialmente explorar todos os nós` b^d`.

Considerações importantes:

* Cenário de pior caso: A complexidade do tempo o (b^d) é tipicamente um cenário * pior dos casos *. O tempo de execução real depende fortemente do problema e da eficácia da poda (com que eficácia o algoritmo pode identificar e evitar explorar ramificações pouco promissoras).
* poda: Bons algoritmos de retrocesso empregam várias técnicas de poda para reduzir significativamente o espaço de pesquisa. A poda pode melhorar drasticamente o tempo de execução, mas não altera a natureza exponencial inerente do algoritmo nos piores casos.
* Exemplo: Um exemplo clássico está resolvendo o problema da n-Queens. Para colocar o N Queens em um quadro de xadrez NXN, o fator de ramificação está relacionado ao número de colunas disponíveis em uma linha e a profundidade está relacionada ao número de linhas. A complexidade do pior caso de tempo é significativamente reduzida pela verificação de conflitos (atacando rainhas) em cada etapa, o que poda muitos dos ramos em potencial.
* Outros fatores: Além de `b` e` d`, outros fatores podem afetar o tempo de execução. Por exemplo, o tempo necessário para avaliar se uma solução candidata é promissora também pode ser um fator significativo.
* NP-Completude: Muitos problemas resolvidos usando o backtracking são NP-completos. Isso significa que acredita-se que não existe um algoritmo de tempo polinomial para resolvê-los em geral, e o retorno geralmente se torna uma abordagem necessária (embora às vezes ineficiente).

em resumo:

Embora o retrocesso possa ser uma poderosa técnica de solução de problemas, sua complexidade de tempo exponencial significa que é mais adequada para problemas onde:

* O tamanho do problema é relativamente pequeno.
* Estratégias de poda eficazes podem ser empregadas para reduzir significativamente o espaço de pesquisa.
* Uma solução aproximada é aceitável se a solução exata for muito demorada para encontrar.

Se o seu problema for grande e a poda for ineficaz, pode ser necessário considerar algoritmos alternativos ou técnicas de aproximação.

Anterior :

Próximo : No
  Os artigos relacionados
·Como restaurar arquivos de CDs de backup 
·O que você pode usar para reverter ou desfazer usando …
·Posso usar um Free Agent /Desk para backup de dois comp…
·Como testar uma bateria de backup em um IBM T21 
·Como fazer backup de um Mac 
·Como usar o rsync para Backups 
·O que ajuda você a exibir partes dos seus dados em uma…
·Como desativar o sono durante um backup Carbonite 
·Como fazer backup de uma imagem VMware 
·Como faço para criar uma imagem de backup do Windows M…
  Artigos em destaque
·Como restaurar um backup do DOS no Windows XP 
·Quantos ambientes de trabalho um PowerPoint possui? 
·Como faço para instalar ActiveX no Windows XP 
·Como manter o Windows Media Player de armazenar 
·Como converter .3 G2 para WMV 
·Como visualizar os arquivos Zip no Outlook 
·Como criar uma caixa suspensa que pode ter várias sele…
·Você pode enviar um documento por fax sem tinta? 
·Como alterar a cor de objetos usando Hue & Saturation n…
·Como começar uma empresa de software de computador 
Cop e direita © Rede de conhecimento computador https://ptcomputador.com Todos os Direitos Reservados