| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> Computer Programming Languages >> Content
    Comment écrire un algorithme de l'ordonnance n Lgn pour vérifier si deux mots donnés sont Anagrammes
    Si deux mots ou expressions sont des anagrammes , ils partagent le même ensemble de lettres dans un ordre différent . Par exemple, «écouter» et «silencieux» sont des anagrammes . Vous pouvez créer un algorithme de commande n log efficacité (n) qui vérifie si une liste de mots donnés sont des anagrammes . Classez ensuite avec un (n log (n)) la méthode de tri O et utiliser une table de hachage pour comparer les résultats . Instructions
    1

    Créer une table de hachage qui a une clé et une liste de valeurs associées à chaque touche. Dès le premier mot, parcourir la liste des mots
    2

    Trier les lettres dans le mot à l'aide de tri par fusion , tri en tas , arbre binaire genre ou une espèce comparable qui fonctionne comme O ( n log . (n)) . Rappelez-vous que anagrammes sont identiques lorsque triée.
    3

    chercher le mot triées dans la table de hachage . Ajouter le mot non triés des valeurs attachées à la clé de hachage si la clé existe déjà . Ajouter le mot triés comme une nouvelle clé de hachage et le mot non triés comme une valeur attachée à la clé de hachage si la touche dièse n'existe pas. Par exemple , compte tenu de "rat ", " goudron " et " art ", ajouter " art" comme la clé de hachage et de "rat" comme une valeur ; ajouter «goudron» comme une valeur " attaché à " art " et ajouter " art" comme une valeur attachée à «l'art ».
    4

    Continuer à chaque mot dans la liste. Lorsque vous atteignez la fin de la liste , imprimez chaque touche dièse et ses valeurs associées à voir les anagrammes trouvés .
    5

    Compter les comparaisons effectuées pour valider que le genre se produit dans " O ( n log (n)) " et que la comparaison se passe en O (1) .

    Previous :

    next :
      articles connexes
    ·Comment afficher les noms d' objet dans MATLAB 
    ·Comment écrire Dll Caractéristiques techniques 
    ·Comment faire pour filtrer les fréquences dans LabVIEW…
    ·Comment faire pour convertir HEX pour les couleurs RVB 
    ·Comment annuler une validation dans Subversion 
    ·Comment faire pour créer un script de connexion dans O…
    ·Comment construire un Skate Park jeu 
    ·Comment calculer l'AMP en C # 
    ·Comment séparer chiffres d'un numéro en Prolog 
    ·Comment faire pour convertir une DEB à l'IPA 
      articles en vedette
    ·Comment concevoir Joomla Templates Menu 
    ·Comment écrire des formules de calcul dans Visual Basi…
    ·Comment réparer Microsoft Visual C + + 
    ·Comment faire pour convertir le format de date 
    ·Comment diviser plusieurs séparateurs en JavaScript 
    ·Comment utiliser une requête pour trouver des mots clé…
    ·Les choses amusantes à faire à Visual Basic 
    ·Comment faire un bouton poussoir Visible dans Visual C 
    ·Fonctions de chaîne dans VBS 
    ·Codage sécurisé Certification 
    Copyright © Connaissances Informatiques http://fr.wingwit.com