Estou trabalhando um um algoritmo que lê um arquivo e depois de manipular os dados, joga eles numa lista. Esta lista contém um padrão de repetição em certo ponto dela, porém cada arquivo carregado gera um padrão diferente, então o algoritmo tem que ser capaz de encontrar esse padrão e retornar onde está.
Minha ideia foi gerar um loop que gera uma outra lista: lista[x : y]
E então compara com uma nova lista gerada tal que: lista2[y+1 : y + (y - x)]
Dessa forma se ela não encontrar duas listas iguais(o que indica um padrão) ela aumentaria a amostragem então de x até y, trabalharíamos com:
lista[x : y+1]
lista2 [y+2 : y + (y-2)]
Uma vez que encontrado o padrão o algoritmo retorna o local do padrão mas minha lógica não está funcionando e não consigo encontrar o local da falha. Segue em anexo o pedaço do algoritmo responsável por fazer isso:
Pergunta
leandro Riato
Estou trabalhando um um algoritmo que lê um arquivo e depois de manipular os dados, joga eles numa lista. Esta lista contém um padrão de repetição em certo ponto dela, porém cada arquivo carregado gera um padrão diferente, então o algoritmo tem que ser capaz de encontrar esse padrão e retornar onde está.
Minha ideia foi gerar um loop que gera uma outra lista: lista[x : y]
E então compara com uma nova lista gerada tal que: lista2[y+1 : y + (y - x)]
Dessa forma se ela não encontrar duas listas iguais(o que indica um padrão) ela aumentaria a amostragem então de x até y, trabalharíamos com:
lista[x : y+1]
lista2 [y+2 : y + (y-2)]
Uma vez que encontrado o padrão o algoritmo retorna o local do padrão mas minha lógica não está funcionando e não consigo encontrar o local da falha. Segue em anexo o pedaço do algoritmo responsável por fazer isso:
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.