Je viens de créer une classe de file d'attente et je dois maintenant l'utiliser pour cela.Aidez-moi à comprendre cet algorithme (simple)
Ecrire un programme C++ pour générer toutes les chaînes en utilisant A, B et C comme les lettres.
Les chaînes doivent être générés dans l'ordre suivant: A B C AA AB AC BA BB BC CA CB CC AAA AAB AAC ABA ABB ABC ACA ACB ACC etc.
Il est supposé le faire jusqu'à ce que ma file d'attente déborde.
Maintenant, je ne comprends pas l'algorithme l'enseignant a proposé l'aide, qui est la suivante.
Démarrer avec A et B et C dans la file d'attente. "Enlever Ajouter puis Ajouter Ajouter"
Le ajout ajouter ajouter quelque chose me rejette, comment cela se fait-il d'obtenir ces lettres dans cet ordre particulier?
Eh bien, la file d'attente utilise un tableau de chars donc je comprends ce que vous dites mais je ne suis pas sûr de savoir comment je pourrais mettre en œuvre cela –
C'est en gros comment fonctionne une recherche de grande taille. –
@Tyler Gardez un compteur de position "tête" et "queue". Lorsque vous "pop" prendre 'myArray [tête];' comme ce que vous sautez, puis allez 'head ++;' pour indiquer que vous le déplacez. Lorsque vous ajoutez à la file d'attente, allez 'myArray [tail] = whatImAdding;' pour l'ajouter, et 'tail ++' pour indiquer qu'il a grandi. Cela débordera quand 'queue' essayera d'accéder à quelque chose qui ne fait pas partie de votre tableau. – corsiKa