Poista kaikki 'A':n esiintymät

Takaisin JHAVEPOP harjoituksiin

Ongelman kuvaus

Kirjoita C++-ohjelma, joka poistaa linkitetystä listasta, kaikki alkiot, joiden info-kentän sisältö on 'A'. Jäljelle jäävien alkioiden pitää olla listassa samassa järjestyksessä kuin missä ne olivat alunperin.

Kuten alla esitellyistä testitapauksista huomaat, voit olettaa, että osoittimet head and tail osoittavat listan ensimmäiseen ja viimeiseen alkioon, tai ovat nollaosoittimia (NULL), jos linkitetty lista on tyhjä. Näiden ehtojen pitää pitää paikkaansa vielä ohjelmakoodisi suorituksen jälkeenkin. Huomaa, että harjoituksessa on määriteltynä myös ylimääräinen osoitin p, jota voit käyttää apuna. Tässä harjoituksessa ei ole tarkoitus määritellä muita osoittimia.

Varmista, että kirjoittamasi ohjelmakoodi toimii oikein kaikissa erilaisissa tapauksissa, oli linkitetyn listan tilanne mikä tahansa. Seuraavat 9 testitapausta helpottavat ohjelmasi testaamista. Kirjoita ohjelmakoodisi valmiiksi ja kopioi se sitten vuorotellen jokaiseen seuraavista JHAVEPOP testeistä kokeillaksesi sen toimintaa eri tilanteissa.


Testitapaus #1

Kuvaus: Lista on tyhjä.

Alkutilanne:

Lopputilanne:

Valmiina testaamaan?

Testitapaus #2

Kuvaus: Listan alussa on yksi alkio, jonka sisältö on 'A'.

Alkutilanne:

Lopputilanne:

Valmiina testaamaan?

Testitapaus #3

Kuvaus: Listan lopussa on yksi alkio, jonka sisältö on 'A'.

Alkutilanne:

Lopputilanne:

Valmiina testaamaan?

Testitapaus #4

Kuvaus: Listan alussa on useita peräkkäisiä alkioita, joiden sisältö on 'A'.

Alkutilanne:

Lopputilanne:

Valmiina testaamaan?

Testitapaus #5

Kuvaus: Listan lopussa on useita peräkkäisiä alkioita, joiden sisältö on 'A'.

Alkutilanne:

Lopputilanne:

Valmiina testaamaan?

Testitapaus #6

Kuvaus: Listassa on vain yksi alkio ja sen sisältö on 'A'.

Alkutilanne:

Lopputilanne:

Valmiina testaamaan?

Testitapaus #7

Kuvaus: Listassa on useita alkioita ja niiden jokaisen sisältö on 'A'.

Alkutilanne:

Lopputilanne:

Valmiina testaamaan?

Testitapaus #8

Kuvaus: Listassa ei ole yhtäkään alkiota, jonka sisältö on 'A'.

Alkutilanne:

Lopputilanne:

Valmiina testaamaan?

Testitapaus #9

Kuvaus: Lista, jossa on satunnaisissa kohdissa alkioita, joiden sisältö on 'A'.

Alkutilanne:

Lopputilanne:


Valmiina testaamaan?

Takaisin JHAVEPOP harjoituksiin