/ / Rekursion er hvad? Rekursion i programmering (eksempler)

Rekursion er hvad? Rekursion i programmering (eksempler)

Rekursioner er selvstændige interessante begivenheder.selv, men i programmering er de af særlig betydning i individuelle tilfælde. For første gang støder på dem, har et stort antal mennesker problemer med deres forståelse. Dette skyldes det store område af potentiel anvendelse af udtrykket selv, afhængigt af den sammenhæng, hvori "rekursion" anvendes. Men man kan håbe, at denne artikel vil bidrage til at undgå en mulig misforståelse eller misforståelse.

Hvad er "recursion" generelt?

rekursion er
Ordet "recursion" har en lang række betydninger,som afhænger af det område, hvor det anvendes. Den universelle betegnelse er dette: Rekursioner er definitioner, billeder, beskrivelser af objekter eller processer i selve objektene. De er kun mulige i de tilfælde, hvor objektet er en del af sig selv. I deres egen måde definerer matematik, fysik, programmering og en række andre videnskabelige discipliner rekursion. Praktisk anvendelse fandt hun i arbejdet med informationssystemer og fysiske eksperimenter.

Hvad mener du ved recursion i programmering?

rekursion i pascal
Rekursive situationer eller rekursion iprogrammering, kaldes de øjeblikke, hvor programmets procedure eller funktion kalder sig selv. Så mærkeligt som det kan synes for dem, der begyndte at lære programmering, lyder det ikke mærkeligt. Husk at rekursion ikke er svært, og i nogle tilfælde erstatter de cyklusser. Hvis computeren korrekt tildeler en procedure eller funktionsopkald, begynder den simpelthen at udføre den.

Rekursionen kan være endelige eller uendelige. For først stoppet selv årsag, bør det også være betingelser for opsigelse. Dette fald i værdien kan være variabel, og når den når en vis værdi, og stoppe samtalen færdiggørelse software / overgang til den efterfølgende kode, afhængigt af behovene for at nå bestemte mål. Ved uendelig rekursion indebærer, at det vil blive kaldt, vil arbejde så længe en computer eller et program, hvor det opererer.

Det er også muligt at arrangere kompleks rekursion medved hjælp af to funktioner. Lad os sige, at der er A og B. En funktion har et opkald i kode B, og B fortæller på sin side, at computeren skal udføre A. Komplekse rekursioner er en vej ud af en række komplekse logiske situationer for computer logik.

Hvis læseren har studeret disse programmercykler, har han sikkert allerede bemærket ligheden mellem dem og rekursion. Generelt kan de faktisk udføre lignende eller identiske opgaver. Ved hjælp af rekursion er det praktisk at gøre en efterligning af arbejdscyklussen. Dette er især nyttigt, hvor cyklusserne selv ikke er meget praktiske at bruge. Ordningen med softwareimplementering adskiller sig ikke meget i forskellige programmeringssprog på højt niveau. Men rekursionen i "Pascal" og rekursionen i C eller et andet sprog har sine egne egenskaber. Det kan med succes implementeres på lavt niveau sprog som "Assembler", men det er mere problematisk og tidskrævende.

Rekursion træer

rekursion i programmering
Hvad er et "træ" i programmeringen? Dette er et endeligt sæt bestående af mindst en node, der:

  1. Den har en første speciel node, som kaldes roden af ​​hele træet.
  2. De resterende noder er i et andet tal end nul, parvis uhæmmet undergrupper, mens de også er et træ. Alle sådanne former for organisation kaldes subtrees af hovedtræret.

Med andre ord: træer indeholder subtre, der indeholder flere træer, men i mindre mængder end det forrige træ. Dette fortsætter, indtil en af ​​noderne er tilbage med en mulighed for at gå videre, og dette vil markere slutningen af ​​rekursionen. Der er en ny nuance om det skematiske diagram: Almindelige træer vokser fra bunden op, og i programmeringen trækkes de omvendt. Noder, der ikke har en fortsættelse kaldes endendoder. Af hensyn til betegnelsen og for nemheds skyld anvendes genealogisk terminologi (forfædre, børn).

Hvorfor bruges det til programmering?

funktion rekursion
Dens brug af rekursion i programmeringen har fundeti at løse en række komplekse opgaver. Hvis du kun skal foretage et opkald, er det lettere at bruge integrationscyklussen, men med to eller flere gentagelser, for at undgå at opbygge en kæde og få dem til at køre som et træ, og der anvendes rekursive situationer. For en lang række opgaver er organisationen af ​​beregningsprocessen på denne måde den mest optimale ud fra ressourceforbrugets synspunkt. Således er rekursion i Pascal eller et andet højt programmeringssprog et opkald til en funktion eller procedure, indtil betingelserne er opfyldt, uanset antallet af eksterne opkald. Med andre ord kan der kun være et opkald til underprogrammet i programmet, men det vil ske indtil et forudbestemt øjeblik. På nogle måder er dette en analog af en cyklus med sin egen specifikke brug.

Forskelle rekursion i forskellige programmeringssprog

På trods af den generelle plan for implementering og specifikkeansøgning i hvert tilfælde, recursion i programmering har sine egne egenskaber. Dette kan føre til vanskeligheder med at finde det rigtige materiale. Men du bør altid huske: Hvis et programmeringssprog kalder funktioner eller procedurer, er opkaldet til rekursion brugbart. Men de væsentligste forskelle vises, når man bruger lave og høje programmeringssprog. Dette gælder især mulighederne for softwareimplementering. Udførelsen afhænger i sidste ende af hvilken opgave der er sat, rekursionen er skrevet i overensstemmelse med den. De anvendte funktioner og procedurer er forskellige, men deres mål er altid det samme - for at få dem til at kalde sig selv.

Rekursion er let. Hvordan kan man bare huske indholdet af artiklen?

rekursionseksempler
For begyndere at forstå det, måske førstvanskeligt, derfor har brug for eksempler på rekursion, eller mindst en. Derfor bør du give et lille eksempel fra hverdagen, hvilket vil hjælpe med at forstå selve essensen af ​​denne mekanisme til opnåelse af mål i programmeringen. Tag to eller flere spejle, læg dem så alle de andre vises i en. Du kan se, at spejle viser sig gentagne gange, hvilket skaber en virkning af uendelig. Her rekursioner er, figurativt set refleksioner (der vil være mange af dem). Som du kan se, er det let at forstå, der ville være et ønske. Og at studere materialerne på programmering, så kan du forstå, at rekursion også er en meget nem opgave.

Læs mere: