| Home  | Casa  | Hardware  | Networking  | Programmazione  | Software  | Domanda  | Sistemi  |   
Programmazione  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Java Programming

  • Programmazione Javascript

  • PHP /MySQL Programmazione

  • Perl Programming

  • Python Programming

  • rubino Programmazione

  • Nozioni di base di Visual Programming
  •  
    Conoscenza Informatica >> Programmazione >> Computer Programming Languages >> Content
    Come distinguere tra DFA e ndfa
    deterministici e non deterministici Finite Automata sono due tipi di concettuali "macchine" progettate per verificare se una data stringa di simboli determinate regole - se è accettabile come un messaggio in una lingua o un codice . Il automi legge un unico simbolo alla volta , ed esiste sempre in un particolare " stato". Ogni stato un automa può essere in ha un insieme di regole per reagire al simbolo successivo da leggere - si può passare ad un altro stato particolare , o rimanere la stessa . Se , dopo una stringa intera è stato letto , l' automa è entrata in uno di un insieme di stati finali accettabili " , " la stringa è grammaticalmente accettabile all'interno del linguaggio del automi sta testando per . Istruzioni
    1

    Esaminare le regole del automi . Questi includono : . Tutti i possibili stati del automi , il suo insieme di stati finali e gli effetti di ogni possibile simbolo su ogni stato
    2

    check per vedere se uno degli stati del automi hanno più possibili reazioni un simbolo particolare . Se uno lo fanno , gli automi non è deterministico - un ndfa . Per esempio, se lo stato iniziale di un automa in grado di reagire con il simbolo " A" sia spostando ad un secondo stato o rimanendo lo stesso , si tratta di un ndfa . Un ndfa restituisce un risultato positivo se non vi è un modo per raggiungere uno stato finale utilizzando una data stringa .
    3

    Tenete a mente che un DFA esiste per ogni ndfa . Perché un ndfa restituendo un risultato positivo per una stringa specifica deve avere almeno un percorso di successo attraverso di esso per quella stringa , ci deve per forza essere un corrispondente DFA che accetta la stringa , che contiene solo le regole per il percorso unico che è stato utilizzato . Ecco un esempio molto semplice : Supponiamo di avere un ndfa con uno stato finale chiamato S1 , la cui iniziale S0 Stato risponde il simbolo " A" sia cambiando a S1 o rimanendo in S0 . Questa macchina avrebbe accettato una stringa costituita semplicemente di " A ", perché c'è un possibile percorso di S1 , e non vi è un corrispondente DFA in cui " A" cambia sempre da S1 a S0 , erogazione con il percorso inutilizzato
    .

    Previous :

    next :
      Articoli Correlati
    ·Come convertire binario a Byte 
    ·Come aggiungere un documento in ColdFusion 
    ·Come eseguire un processo su un PC remoto con WMI 
    ·Come creare una cartella utilizzando la libreria di ogg…
    ·Come utilizzare CGImage per fare le maschere 
    ·Come disegnare diagrammi di sequenza 
    ·Come formattare il controllo DataGrid che non ha righe 
    ·Come fermare un loop infinito 
    ·Come creare il tuo Studio Instance UID 
    ·Qual è la differenza tra una Assemblea Lingua e una ma…
      Articoli in evidenza
    ·Come creare caselle di avviso in Windows 
    ·Come utilizzare la funzione di Flock in PHP 
    ·Come eliminare una stringa dopo un Cue in PHP 
    ·Come usare NetBeans per eseguire il debug di MATLAB 
    ·Come eseguire l'override NetBeans 
    ·Come progettare un programma per calcolare i voti degli…
    ·Come installare VisualStudio.Net 
    ·Come ordinare le matrici Numericamente in Visual Basic 
    ·Come modificare il nome della colonna della tabella MyS…
    ·Come fare una data in PHP 
    Copyright © Conoscenza Informatica http://it.wingwit.com