Classe Vector

Olá pessoal, na faculdade, me deparei com um enunciado estranho que devo programar, aí segue:

“Construa uma classe, subclasse da classe Vector, que manipule estruturas de
listas duplamente encadeadas, definido operações que permitam: acessar,
além do elemento do início e do fim da lista, o antecessor e o predecessor de
um dado elemento; inserir um novo elemento como sucessor de um elemento
dado; inserir um novo elemento como predecessor de um elemento dado;
eliminar um elemento dado. Construa um programa que usa essa classe para
instanciar uma lista e inicializar essa lista com um conjunto de elementos.
Depois, fornecer elementos para usar todos os métodos criados.”

Eu achei ele meio confuso, nao quero que ninguem faça pra mim, mas nao consegui pensar em uma lista duplamente encadeada com Vector…
Alguem pode tentar me dar uma luz ?
[]'s

E aew blz?
Então não sei se entendi direto, realmente parece um pouco confuso, mas vê se ajuda:


import java.util.LinkedList;
import java.util.Vector;


public class TesteVector extends Vector {

    private LinkedList linkedList;


    public TesteVector (LinkedList l){

        linkedList = l;
    }

    public Object accessFirst(){

        return linkedList.peekFirst();

    }

    public Object accessLast(){
        return linkedList.peekLast();
    }



    public static void main(String args[]){


        LinkedList l = new LinkedList();
        l.addFirst(8);
        l.addFirst(9);
        TesteVector t = new TesteVector(l);
        Integer value =(Integer) t.accessFirst();
        Integer value1 = (Integer) t.accessLast();
        System.out.println(value);
        System.out.println(value1);

    }

}

Assim, tá bem “chulo” o código, poderia ter usado Genericos, que ficaria mais legível, no main eu já parti que viria um Integer, mas, se a ideia for essa, acho q é um começo…

Entao, pensei, só que não sei se pode usar linkedlist, pensei nisso tambem…
Mas valeu pela ajuda…

Tiberio se a preocupação for que uma LinkedList não é duplamente ligada, acho que você pode, ontem estava lendo sobre colection:
“Na linguagem Java, todas as listas encadeadas são, na verdade, duplamente encadeadas, ou seja, cada encadeamento também armazena uma referência para seu predecessor”, core java 2 volume II página 73.
Acho que isso é comprovado pelo uso do ListIterator que possui o método previous e next. Ela guarda uma referencia do elemento predecessor e sucessor

Não não, acredito que seja sim (Álias, fiquei procurando e não achei um método que pegasse o predecessor, obrigado pelo previous() ^^).
Mas tipo, pelo que entendi do exercício, eu tenho que “fazer” uma lista duplamente encadeada, só com a classe Vector, sem usar a classe LinkedList, que torna mais fácil e mais óbvio, entendeu ?

Putz hehe mal minha noobice, então, fodão msm, se der olha no livro do Deitel no capítulo 17 tem uma parte que ele implementa uma lista Encadeada, acho que é mais ou menos a lógica que você vai ter que aplicar para referenciar um sucessor e predecessor, ele usa um mecanismo chamado classe autoreferencial se não me engano… Tipo tinha dois atributos na classe um com valor e outro que era do mesmo tipo da classe, enfim, infelizmente acho q não consigo e ajudar. Mal ae hehe

Que isso, relaxa, você me ajudo sim, obrigado ae, vou dar uma olhada no capítulo…
[]'s