J'essaie de trouver un algorithme pour minimiser DFA en python. J'ai trouvé quelques exemples et ils ont tous des classes dans le code. Maintenant, je ne sais pas comment transférer les définitions de DFA qui sont placées dans le fichier .txt et les mettre dans ces classes. .txt est formatée sur le chemin suivant:en minimisant dfa en python
- ligne: L'ensemble des états séparés par une virgule, lexicographiquement commandé
- ligne: un ensemble de symboles d'alphabet séparés par des virgules, lexicographiquement commandé
- ligne: L'ensemble des états acceptables séparés par une virgule, lexicographiquement commandé
- ligne: le premier état
- et toutes les autres lignes: fonction de transfert dans le format état actuel, Alphabet symbolisation> état suivant
exemple des définitions:
dyny,fllf,gdci,gwtj,knos,kole,mjnw,msdl,mtfz,nbat,njgb,nzwx,rzpn,vcsc,zgfx
b,d,e,f,g,k,l,m,n,o,p,q,r,t,u,w
dyny,njgb,zgfx
mtfz
dyny,b->rzpn
dyny,d->msdl
dyny,e->gdci
.
.
.
exemple de classe
class DFA:
def __init__(self, states, alphabet, delta, start, accepts):
self.states = states
self.start = start
self.delta = delta
self.accepts = accepts
self.alphabet = alphabet
self.current_state = start
je charger le fichier txt avec
f = open('definition.txt','r')
lines = f.readlines()
Pouvez-vous poster ce que vous avez essayé de faire jusqu'à présent? Je suppose que c'est votre devoir. –
oui, quelque chose de semblable aux devoirs. J'ai dfa class, et des méthodes pour imprimer, valider, supprimer des états inaccessibles ... mais je ne sais pas comment remplir les données dans la classe et ses méthodes ... – skywlk
Je ne sais pas comment faire vos devoirs pour vous non plus; Cependant, si vous nous donnez plus d'informations, nous pouvons vous aider. –