biergepo
07-01-2013, 14:12
Ciao a tutti! Ho due TDA che interagiscono fra di loro, Nodo e Lista:
class Nodo {
private int elemento;
private Nodo successivo;
public Nodo(){
this(0,null);
}
public Nodo(int elemento, Nodo successivo){
this.elemento = elemento;
this.successivo = successivo;
}
public int getElemento(){
return this.elemento;
}
public Nodo getSuccessivo(){
return this.successivo;
}
public void setElemento(int elemento){
this.elemento = elemento;
}
public void setSuccessivo(Nodo successivo){
this.successivo = successivo;
}
}
--------------------------------------------------------------------------------------
class Lista {
private Nodo primo; // riferimento al primo nodo della lista
private Nodo ultimo; // riferimento all'ultimo nodo della lista
private int lunghezza; // numero di elementi inseriti nella lista
public Lista() {
primo = null;
ultimo = null;
lunghezza = 0;
}
// verifica se la lista e' vuota
public boolean vuota(){
return lunghezza == 0;
}
public int lunghezza(){
return lunghezza;
}
public int getPrimoElemento(){
return primo.getElemento();
}
public int getUltimoElemento(){
return ultimo.getElemento();
}
// Inserisce un nuovo elemento nella lista al primo posto
public void inserisciPrimo(int elemento){
primo = new Nodo(elemento,primo);
if (vuota())
ultimo = primo;
lunghezza++;
}
// Inserisce un nuovo elemento nella lista in ultima posizione
public void inserisciUltimo(int elemento){
if (vuota())
inserisciPrimo(elemento);
else {
ultimo.setSuccessivo(new Nodo(elemento,null));
ultimo = ultimo.getSuccessivo();
lunghezza++;
}
}
}
Dovrei scrivere un programma "UsaLista" che inserisce nella lista una sequenza di interi dati in input tramite tastiera. Ho capito più o meno come funzionano i TDA, ma non capisco come inizializzarli e passare i vari parametri, perché ho mi da "error: cannot find symbol" o mi dice "error: non-static method...". Chi mi darebbe una mano a capire? Grazie!
class Nodo {
private int elemento;
private Nodo successivo;
public Nodo(){
this(0,null);
}
public Nodo(int elemento, Nodo successivo){
this.elemento = elemento;
this.successivo = successivo;
}
public int getElemento(){
return this.elemento;
}
public Nodo getSuccessivo(){
return this.successivo;
}
public void setElemento(int elemento){
this.elemento = elemento;
}
public void setSuccessivo(Nodo successivo){
this.successivo = successivo;
}
}
--------------------------------------------------------------------------------------
class Lista {
private Nodo primo; // riferimento al primo nodo della lista
private Nodo ultimo; // riferimento all'ultimo nodo della lista
private int lunghezza; // numero di elementi inseriti nella lista
public Lista() {
primo = null;
ultimo = null;
lunghezza = 0;
}
// verifica se la lista e' vuota
public boolean vuota(){
return lunghezza == 0;
}
public int lunghezza(){
return lunghezza;
}
public int getPrimoElemento(){
return primo.getElemento();
}
public int getUltimoElemento(){
return ultimo.getElemento();
}
// Inserisce un nuovo elemento nella lista al primo posto
public void inserisciPrimo(int elemento){
primo = new Nodo(elemento,primo);
if (vuota())
ultimo = primo;
lunghezza++;
}
// Inserisce un nuovo elemento nella lista in ultima posizione
public void inserisciUltimo(int elemento){
if (vuota())
inserisciPrimo(elemento);
else {
ultimo.setSuccessivo(new Nodo(elemento,null));
ultimo = ultimo.getSuccessivo();
lunghezza++;
}
}
}
Dovrei scrivere un programma "UsaLista" che inserisce nella lista una sequenza di interi dati in input tramite tastiera. Ho capito più o meno come funzionano i TDA, ma non capisco come inizializzarli e passare i vari parametri, perché ho mi da "error: cannot find symbol" o mi dice "error: non-static method...". Chi mi darebbe una mano a capire? Grazie!