Sisukord:
- Tarvikud
- Samm: seadistage oma põhimeetod
- Samm: looge oma rekursiivse meetodi päis
- 3. samm: looge oma Kicker/alusümbris
- 4. samm: rekursiivne samm
- Samm: lühendage probleemi
- 6. samm: looge täisarvude massiiv
- Samm: helistage meetodile oma massiividega
- Samm: printige tulemused
- 9. samm: õnnitlused
Video: Massiivi rekursiivne kokkuvõtmine Java -s: 9 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:47
Rekursioon on väga kasulik ja aeganõudev protseduur, mis suudab väga väikese koodiga kiiresti probleemi lahendada. Rekursioon hõlmab teie loodud meetodit, mis lühendab algprobleemi.
Selle näite puhul võtame kokku 10 täisarvu massiivi, kuid selle suurus võib olla mis tahes pikkusega.
Tarvikud
Te peaksite teadma Java põhisüntaksit ja omama oma IDE -d või tekstiredaktorit, et selle ülesande jaoks kood kirjutada.
Samm: seadistage oma põhimeetod
Alustuseks seadistage oma peamine meetod äsja loodud klassis. Panin oma klassile nimeks RecursiveSum. Siin loote täisarvude massiivi ja helistate oma rekursiivsele meetodile.
Samm: looge oma rekursiivse meetodi päis
Väljaspool oma põhimeetodit looge oma rekursiivse meetodi jaoks meetodi päis.
Meetod on staatiline, kuna see ei nõua selle kasutamiseks objekti.
Tagastustüüp on int, kuna kasutatav massiiv on täisarvudega täis. Seda saab aga muuta mis tahes numbritüübiks, mida massiiv sisaldab.
Olen oma meetodile andnud nime recursiveSum, mis võtab kaks parameetrit; täisarvude massiivi ja indeksi, mille summale lisame. Nimetasin need parameetrid vastavalt numbriteks ja indeksiteks.
Näete praegu vigu ja see on hea. Need fikseeritakse hiljem.
3. samm: looge oma Kicker/alusümbris
Rekursiivne meetod vajab kickerit/alusjuhtumit. See on tingimus, mis takistab teie meetodil end lõpmatult nimetama. Seda põhijuhtumit võib pidada kõige lihtsamaks juhtumiks, millega kokku puutume. Sel juhul on põhijuhtum siis, kui oleme oma massiivi lõpus. Kui praegune indeks võrdub massiivi pikkusega (miinus 1, sest massiivid hakkavad loendama 0 -st mitte 1 -st), oleme lõpus ja tagastame selle elemendi selle indeksi juurde.
4. samm: rekursiivne samm
Kui meil on baasjuhtum olemas, on järgmine samm meie rekursiivne samm. Siin juhtub maagia. Oleme käsitlenud juhtumit, kui meie indeks võrdub meie massiivi viimase elemendiga. Mis siis, kui me pole oma massiivi viimasel elemendil? Mis oleks, kui saaksime lihtsalt öelda, et see lisab meie praeguse elemendi ja järgmise? Lõpuks jõuame oma massiivi lõppu ja meie põhijuhtum mõjutab.
Selle saavutamiseks tagastame lihtsalt oma praeguse indeksi ja lisame massiivi ülejäänud osa.
Samm: lühendage probleemi
Kuidas me lihtsalt "lisame ülejäänud"? Meil on juba meetod, mis lisab teatud elemendi; meie meetodit recursiveSum ()! Võime seda uuesti nimetada, kuid muutke, millist indeksit me kokku võtame.
Me edastame samas massiivis, mida töötleme, kuid edastame järgmise indeksi oma praegusest indeksist. Teeme seda, lisades ühe lihtsalt meie praegusele indeksile, nagu näidatud.
6. samm: looge täisarvude massiiv
Nüüd, kui meie rekursiivne summeerimismeetod on lõpule jõudnud, saame luua oma massiivi, mida töötleme. See massiiv on meie peamises meetodiplokis.
Massiivi suurust saate muuta nii kaua kui soovite. Olen loonud mõne erineva suuruse ja väärtusega massiivi, et näidata, et see töötab mitte ainult ühe suurusega.
Samm: helistage meetodile oma massiividega
Nüüd saate helistada oma rekursiivsele meetodile ja edastada need massiivid sellele. Nüüd saate oma programmi käivitada.
Samm: printige tulemused
Midagi ei juhtunud. Miks? Rekursiivne summa tagastab täisarvu, kuid me pole selle täisarvuga midagi teinud. See tegi oma töö, kuid me ei näe tulemust. Tulemuse nägemiseks prindime selle lihtsalt välja. Pärast selle käivitamist peaksite nägema iga oma massiivi tulemusi.
9. samm: õnnitlused
Olete lõpetanud rekursiivse funktsiooni. Muutke julgelt oma massiivide suurust. Kui proovite seda, märkate, et tühja massiivi korral jookseb see kokku. Me ei ole sellega arvestanud, kuid see on suurepärane võimalus rekursiivse meetodi täiustamiseks.
Soovitan:
Kuidas kasutada mõnda tsüklit massiivi muutmiseks Java -s: 9 sammu
Kuidas kasutada while -tsüklit massiivi muutmiseks Java -s: täna näitan teile, kuidas Java abil luua tsükkel while, mida saab kasutada numbrite või sõnade loendi kordamiseks. See kontseptsioon on mõeldud algtaseme programmeerijatele ja kõigile, kes soovivad Java silmuste ja massiivide kiiret harjamist
PCB UV LED -massiivi taimer: 3 sammu
PCB UV LED -massiivi taimer: see on omamoodi projekt, mille valmimine võttis oma lihtsusest hoolimata kaua aega! Selle põhjuseks on asjaolu, et olen oma trükkplaatide tegemiseks pikka aega kasutanud UV -luminofoorlampide kasti ja arvasin alati, et teine, kasutades UV -LED -e, võib
Pro IR -massiivi liidestamine Arduinoga: 5 sammu
Pro IR -massiivi liidestamine Arduinoga: ProIR on IR -andurite massiiv, milles on 5 IR -andurit ja 3 indikaator -LED -i, mis on spetsiaalselt loodud täiusliku & selged näidud mustvalge pinna jaoks erinevatel kõrgustel ja heledal, värvide väärtuste erinevus on väga hea võrreldes
KUIDAS MULJETAVA PUIDU ROBOTARVE KOKKUVÕTMINE (OSA 3: ROBOTARVEL) - MIKRO PÕHISEL: BITN: 8 sammu
KUIDAS MULJETAVA PUIDU ROBOTARVE KOKKUVÕTMINE (OSA 3: ROBOTARVEL) - PÕHINE MIKRO: BITN: Järgmine paigaldusprotsess põhineb vältitava takistuse režiimi lõpuleviimisel. Eelmise jaotise installiprotsess on sama, mis installijärjekorda jälgimisrežiimis. Siis vaatame A lõplikku vormi
KUIDAS MULJETAVA PUIDU ROBOTARVE KOKKUVÕTMINE (OSA 2: ROBOT takistuste vältimiseks) - PÕHINE MIKRO: BIT: 3 sammu
KUIDAS MULJETAVA PUIDU ROBOTARVE KOKKUVÕTMINE (OSA 2: ROBOT takistuste vältimiseks)-PÕHINE MIKRO: BIT: Varem võtsime kasutusele Armbiti reajälgimisrežiimis. Järgnevalt tutvustame, kuidas Armbitit takistuste režiimi vältides installida