Palindrome efficacité de détection

Je suis curieuse par Jon Limjap l'interview de mésaventure et a commencé à chercher des moyens efficaces pour faire palindrome de détection. J'ai vérifié le palindrome de golf réponses et il me semble que dans les réponses sont deux algorithmes seulement, l'inversion de la chaîne et de la vérification de la queue et de la tête.

def palindrome_short(s):
    length = len(s)
    for i in xrange(0,length/2):
        if s[i] != s[(length-1)-i]: return False
    return True

def palindrome_reverse(s):
    return s == s[::-1]

Je pense qu'aucune de ces méthodes sont utilisées dans la détection exacte des palindromes dans d'énormes séquences d'ADN. J'ai regardé un peu autour de lui et n'ai pas trouvé libres d'article sur ce qu'est un ultra efficace pour ce qui pourrait être.

Une bonne façon peut-être de la parallélisation de la première version dans un divide-and-conquer approche, l'affectation d'une paire de tableaux de char 1..n et la longueur-1-n..longueur-1 pour chaque thread ou le processeur.

Ce serait une meilleure façon?

Savez-vous tout?

source d'informationauteur Vinko Vrsalovic