Oppgave 1
legg inn 5 (5 øverst på stakken) legg inn 7 (7 øverst på stakken) ta ut (7 tas ut, 5 er øverst) legg inn 3 (3 øverst på stakken) legg inn 7 (7 øverst på stakken) ta ut (7 tas ut, 3 er øverst) 3 er nå øverst på stakken
Oppgave 2
legg inn 2 (2 øverst på stakken) legg inn 5 (5 øverst på stakken) legg inn 1 (1 øverst på stakken) kikk (ingen endring i stakken) ta ut (1 tas ut, 5 er øverst) 5 er nå øverst på stakken
Oppgave 3
while (!A.tom()) C.leggInn(A.taUt()); // elementene flyttes fra A til C while (!C.tom()) B.leggInn(C.taUt()); // elementene flyttes fra C til B
Oppgave 4
Svaret er ja! La B være en hjelpestakk og temp en hjelpevariabel. Anta at stakken A inneholder tallene 1, 2, 3 og 4 med 4 øverst. Vi starter med å flytte den øverste på A (dvs. 4) til hjelpevariabelen temp og restene av tallene på A til hjelpestakken B. Så flyttes verdien i variabelen temp, dvs. 4, tilbake til A og havner dermed på bunnen av A. Så flyttes tallene på B tilbake til A. Dermed inneholder A tallene 4, 1, 2, 3 med 3 øverst.
Dette gjentas. Den øverste på A (dvs. 3) flyttes til temp og de to neste tallene på A til B. Verdien i temp, dvs. 3, flyttes tilbake til A og havner dermed ovenpå 4. Så flyttes tallene på B tilbake til A. Dermed inneholder A tallene 4, 3, 1, 2 med 2 øverst.
Osv. til A har fått verdiene snudd.
Oppgave 5
Svaret er ja! Gjør som i Oppgave 4. Da vil elementene på A komme i omvendt rekkefølge. Avslutt med å flytte dem fra A til B.
Oppgave 6
Ja, det er mulig med en idé tilsvarende den i Oppgave 4. Se også Oppgave 7 i Avsnitt 4.1.2.
Oppgave 7
Opprett en stakk. Gå så gjennom teksten. Hver venstre-parentes vi finner legges på stakken. Finner vi en høyre-parentes tar vi en venstre-parentes fra stakken. Disse hører sammen. Hvis vi får tom stakk betyr at vi har en høyre-parentes som ikke har noen tilhørende venstre-parentes. Hvis det er noe igjen på stakken når vi er ferdig, betyr det at vi har en venstre-parentes (eller parenteser) uten tilhørende høyre-parentes.