UPPSALA UNIVERSITET  
Inst. f. lingvistik och filologi Lärare: Mats Dahllöf
Uppsala universitet
Hoppa över länkar
Kursplan

Materialmapp

Språkteknologi
och datorlingvistik







2008-08-13 11:53
Programmering för språkteknologer II. HT 2008.

Laboration 1: enkel stack (enkellänkad lista)

Dessa övningar gäller en enkel generisk klass för stackar implementerade som enkellänkade listor. SimpleStack<E> Denna klass arbetar vi bara med som övning. I ett verkligt program skulle vi t.ex. kunna använda LinkedList<E> för våra stackar.

(a) Lägg till metoder i SimpleStack<E> motsvarande och med samma namn som dessa i LinkedList<E> (se dess dokumentation)

Relativt lätta uppgifter.

VG-uppgift

Gör om SimpleStack<E> med precis samma beteende hos metoderna, fast med en implementation som bygger på fält istället. När stacken blir större än att den ryms i befintligt fält (theArray), låt oss bestämma oss för att nyallokerat fält skall vara dubbelt så stort som det befintliga. Lite material att utgå ifrån:

import java.lang.reflect.Array;

public class SimpleStack {

    /* INSTANSVARIABLER */

    private int arraySize; 
    private int currentSize; 
    private T[] theArray;
    

    /* KONSTRUKTOR */

    public SimpleStack() {
        theArray= (T[]) new Object[20];
	// detta ger en varning "unchecked cast"
	arraySize=20;
	currentSize=0;
    }

    /* EN ANTAL METODER SAKNAS! */

}