Sisällysluettelo:

Siirtyminen linkitetyn luettelon kautta rekursion avulla - Java: 12 vaihetta
Siirtyminen linkitetyn luettelon kautta rekursion avulla - Java: 12 vaihetta

Video: Siirtyminen linkitetyn luettelon kautta rekursion avulla - Java: 12 vaihetta

Video: Siirtyminen linkitetyn luettelon kautta rekursion avulla - Java: 12 vaihetta
Video: CS50 2013 - Week 8 2024, Marraskuu
Anonim
Kulje linkitetyn luettelon läpi käyttämällä rekursiota - Java
Kulje linkitetyn luettelon läpi käyttämällä rekursiota - Java

Tervetuloa ja kiitos, että valitsit tämän ohjejoukon, joka näyttää sinulle kuinka luoda rekursiivinen toiminto. Perustietoja javasta tarvitaan ymmärrettävien vaiheiden ymmärtämiseksi.

Kaiken kaikkiaan tämän 12-vaiheisen prosessin ei pitäisi kestää yli 15 minuuttia. Ainoa vaihe, joka voi kestää yli minuutin, on vaihe 4, joka pyytää käyttäjää luomaan näytetestin suoritettavaksi. Käytettävä aika on käyttäjän päätettävissä, mutta arvioisin, että se kestää enintään 3 minuuttia.

Mitä tarvitset tietokoneellesi: Oma testitiedosto (johon lisäämme koodin). Mikä tahansa valitsemasi java IDE (käytämme tähän drjavaa).

Vaihe 1: Vaihe yksi: Avaa Java IDE of Choice

Vaihe yksi: Avaa Java IDE of Choice
Vaihe yksi: Avaa Java IDE of Choice

Tässä ohjeessa käytetään drjavaa.

Vaihe 2: Vaihe 2: Lataa ja avaa My.txt -tiedosto

Tämä teksti sisältää”Node” -luokan, jonka kanssa työskentelemme, sekä joitain testejä varmistaaksemme, että kirjoittamamme koodi toimii aiotulla tavalla. Lataa tästä

Vaihe 3: Vaihe kolme: Kopioi ja liitä.txt -tiedosto IDE: hen

Vaihe kolme: Kopioi ja liitä.txt -tiedosto IDE: hen
Vaihe kolme: Kopioi ja liitä.txt -tiedosto IDE: hen

Kopioi teksti tiedostostani ja liitä se avaamaasi java IDE: hen.

Vaihe 4: Vaihe neljä: Luo testi

Vaihe neljä: Luo testi
Vaihe neljä: Luo testi

Tämä tarkistaa, toimiiko rekursiivinen toiminto oikein. Noudata annettujen esimerkkitestien muotoa.

Vaihe 5: Vaihe viisi: Luo rekursiivinen toiminto

Vaihe viisi: Luo rekursiivinen toiminto
Vaihe viisi: Luo rekursiivinen toiminto

Kirjoita pyydettäessä seuraava:

julkinen int -koko () {}

Vaihe 6: Vaihe kuusi: Luo rekursiivinen aputoiminto

Vaihe kuusi: Luo rekursiivinen aputoiminto
Vaihe kuusi: Luo rekursiivinen aputoiminto

Kirjoita pyydettäessä seuraava:

julkinen staattinen int koko H (solmu x) {}

Vaihe 7: Vaihe seitsemän: Soita aputoiminto päärekursiivisessa toiminnossa

Vaihe seitsemän: Soita aputoiminto päärekursiivisessa toiminnossa
Vaihe seitsemän: Soita aputoiminto päärekursiivisessa toiminnossa

Tämä saa tehtävämme käydä läpi linkitetyn luettelon alusta alkaen.

Kirjoita ensimmäiseen kirjoittamastamme funktiosta seuraava:

palauta koko H (ensimmäinen);

Vaihe 8: Vaihe 8: Luo pohjakotelo aputoimintoa varten

Vaihe 8: Luo pohjakotelo aputoimintoa varten
Vaihe 8: Luo pohjakotelo aputoimintoa varten

Jokaisella rekursiivisella toiminnolla on oltava tapa lopettaa se. "Perustapaus" antaa meidän lopettaa kulkemisen, kun olemme luettelon lopussa.

Kirjoita "auttaja" -toimintoon seuraava:

if (x == null) palauta 0;

Vaihe 9: Vaihe yhdeksän: Lisää”+1” ja kutsu avustajatoiminto uudelleen

Vaihe yhdeksän: Lisää "+1" ja kutsu avustajatoiminto uudelleen
Vaihe yhdeksän: Lisää "+1" ja kutsu avustajatoiminto uudelleen

Lisäämme yhden jokaisesta solmusta, jossa rekursiivinen funktio vierailee.

Kirjoita "auttaja" -toimintoon seuraava:

palauta 1 + koko H (x.seuraava);

Vaihe 10: Vaihe 10: Käännä / tallenna koodi

Koodi on koottava ennen kuin voimme suorittaa ohjelman.

Vaihe 11: Vaihe 11: Suorita ohjelma

Suorita ohjelmasi! Mikä oli lähtö? Jos jokin meni pieleen, katso taaksepäin ja tarkista, oletko syöttänyt koodin oikein ja oikeassa paikassa.

Vaihe 12: Vaihe 12: Onnittelut

Vaihe 12: Onnittelut!
Vaihe 12: Onnittelut!

Jos tämä on viimeinen tulos, olet virallisesti kirjoittanut rekursiivisen funktion, joka iteroi linkitetyn luettelon kautta.

Suositeltava: