Hjem Utvikling Hva er en ikke-deterministisk algoritme? - definisjon fra techopedia

Hva er en ikke-deterministisk algoritme? - definisjon fra techopedia

Innholdsfortegnelse:

Anonim

Definisjon - Hva betyr ikke-deterministisk algoritme?

En ikke-deterministisk algoritme kan gi forskjellige utganger for samme inngang på forskjellige henrettelser. I motsetning til en deterministisk algoritme som bare produserer en enkelt utgang for samme inngang selv på forskjellige kjøringer, reiser en ikke-deterministisk algoritme på forskjellige ruter for å oppnå de forskjellige resultatene.

Ikke-deterministiske algoritmer er nyttige for å finne omtrentlige løsninger, når en nøyaktig løsning er vanskelig eller dyr å utlede ved bruk av en deterministisk algoritme.

Techopedia forklarer ikke-deterministisk algoritme

Et eksempel på en ikke-deterministisk algoritme er utførelsen av samtidig algoritmer med løpsbetingelser, som kan utvise forskjellige utganger på forskjellige løp. I motsetning til en deterministisk algoritme som fører en enkelt bane fra input til output, kan en ikke-deterministic algoritme ta mange baner, med noen som kommer til de samme outputene, og andre kommer til forskjellige output. Denne funksjonen brukes matematisk i ikke-deterministiske beregningsmodeller som ikke-deterministisk endelig automat.

En ikke-deterministisk algoritme er i stand til å utføres på en deterministisk datamaskin som har et ubegrenset antall parallelle prosessorer. En ikke-deterministisk algoritme har vanligvis to faser og utgangstrinn. Den første fasen er gjetningsfasen, som benytter seg av vilkårlige tegn for å løse problemet.

Den andre fasen er bekreftelsesfasen, som returnerer sann eller usann for den valgte strengen. Det er mange problemer som kan konseptualiseres ved hjelp av ikke-deterministiske algoritmer, inkludert det uløste problemet med P vs NP i databehandlingsteori.

Ikke-deterministiske algoritmer brukes til å løse problemer som tillater flere utfall. Hvert utfall den ikke-deterministiske algoritmen produserer er gyldig, uavhengig av valgene som blir gjort av algoritmen under utførelsen.

Hva er en ikke-deterministisk algoritme? - definisjon fra techopedia