Vellykket dataprogrammering starter lenge før du setter deg ned foran en skjerm eller åpne opp den bærbare datamaskinen . Et program er en løsning på et bestemt problem, og når du oppretter en plan for å løse det problemet , vil løsningen komme som mye enklere for deg . Finite automater hjelpe deg å planlegge den løsningen , og vite forskjellen mellom deterministisk eller nondeterministic endelig automater vil øke sjansene for suksess . State Machine
En tilstandsmaskin er bare et annet navn for en endelig automat . Det er en samling av ulike tilstander som arbeider sammen for å oppnå ønsket mål de forskjellige oppgavene . For eksempel kan du lage en tilstandsmaskin for å identifisere om en streng representerer et bestemt ord . Skriver du inn det ordet, si ordet " person " ville begynne staten maskinens prosess .
Stater
States representerer et annet stadium av prosessen. For ordet erkjenner endelig automat for den siste delen, er den første , eller innledende fasen den innledende fasen, hvor vi kan se etter den første bokstaven i det ønskede ordet . For dette eksempelet , vil den innledende fasen være bokstaven " p ", den første bokstaven i ordet " person ". Hvis den første bokstaven er " p ", da den første staten er nådd og endelig automat har vært engasjert .
Transitions
Transitions knytte statene i begrenset automater . For å komme til hver ny rad stat, må en eiendom bli funnet å være sant . For eksempel er det nødvendig at overgangen til neste bokstav være bokstaven " e ". Hvis bokstaven " e" er faktisk den neste bokstav, og inngangen reiser til den neste tilstand . Inngangen vil da bli sjekket i følgende tilstander , og hver gang inngangen tilfredsstiller den nødvendige betingelsen av staten , det vil overgangen til den endelige tilstand er nådd eller innspill viser seg å være falsk .
deterministisk og nondeterministic
tilstandsmaskinen beskrevet i forrige avsnitt er en deterministisk endelig automat , hvor hver stat er unik. Hva ville gjøre et endelig automat nondeterministic er hvis hver stat ikke var. For eksempel, hvis den tilstandsmaskin tillot inngangssignalet for å ha en hvilken som helst bokstav som den andre bokstav i ordet "person" for overgang til den neste, deretter den neste tilstand ikke ville være unikt , slik at det en nondeterministic endelig automat .