Nodos

Disponível somente no TrabalhosFeitos
  • Páginas : 3 (535 palavras )
  • Download(s) : 0
  • Publicado : 21 de fevereiro de 2013
Ler documento completo
Amostra do texto
public DLinkedList ordenaDLinkedList(DLinkedList dll){ int sizedll = (int) dll.size; //número de nós da lista DNode current = head; //auxiliar para percorrer a lista duplamente encadeada E[] vetor =new E[sizedll]; //esta linha não compila, diz o seguinte "Cannot created generic array of E" for(int i = 0;i0;i--,current=current.getPrevious()){ //atribui os valores do vetor ordenado para a novalista ordenada.addFirst(vetor[i]); } return ordenada; //retorna a lista } -----------------------------------------------------------------------------------------------------------------------publicclass DLinkedList { protected DNode head; //nodo cabeça da lista protected DNode tail; //nodo cauda da lista protected long size; //número de nodos da lista public DLinkedList() { size = 0; head = tail =null; } public boolean isEmpty() { return head == null; } public E getFirst() throws UnderflowException { if (isEmpty()) throw new UnderflowException(); return head.getElement(); } public E getLast()throws UnderflowException { if (isEmpty()) throw new UnderflowException(); return tail.getElement(); } public void addFirst(E insertItem) { DNode n = new DNode(insertItem); if (isEmpty()) { head =tail = n; } else { head.setPrevious(n); n.setNext(head); head = n; } size++; } public void addLast(E insertItem) { DNode n = new DNode(insertItem); if (isEmpty()) { head = tail = n; } else {tail.setNext(n); n.setPrevious(tail); tail = n; } size++; } public E removeFirst() throws UnderflowException { if (isEmpty()) { throw new UnderflowException();

} E removedItem = head.getElement(); if (head== tail) { head = tail = null; } else { head = head.getNext(); head.setPrevious(null); } size--; return removedItem; } public E removeLast() throws UnderflowException { if (isEmpty()) { throw newUnderflowException(); } E removedItem = tail.getElement(); if (head == tail) { head = tail = null; } else { DNode penultimo = tail.getPrevious(); tail = penultimo; tail.setNext(null); } size--; return...
tracking img