Pergunta

Suponha que eu deseja remover duplicatas de uma string.Decidi usar uma matriz booleana de comprimento 256, que armazena se um determinado personagem já ocorreu ou não.Eu posso percorrer a string e poder remover todas as duplicatas com a ajuda desta matriz booleana auxiliar.

minha pergunta é que "é este algoritmo está no local?"

Eu acho que está usando uma quantidade constante de espaço que não vai mudar com o tamanho da entrada que deve estar no local.Por favor, corrija se estiver errado.

Foi útil?

Solução

No lugar Algoritmo significa que você está transformando dados de entrada em dados de saída.Você não pode recuperar dados de entrada de volta depois de executar o algoritmo.

Algoritmo de lugar fora significa que você mantém os dados de entrada intactos e usam espaço separado para dados de saída.

.
.

minha pergunta é que "é este algoritmo está no local?"

O algoritmo está no lugar, desde que não haja uma matriz separada para armazenar dados de saída.Nos dados de entrada, após a remoção de duplicatas, os restantes elementos podem ser vazios / null.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top