Ragazzi ho un problema. Sto facendo una classe che misura il tempo per aggiungere dati, toglierli, cercarli, ecc. per alcune strutture dati; in questo caso sto analizzando la PriorityQueue.
Se passo alla struttura numeri interi , il struttura riesce a tenere ordinati in ordine crescente tutti i valori...ma ovviamente passandogli stringhe non ottengo lo stesso risultato!!.
Visto che la mia struttura deve poter accettare qualunque cosa, ho PROVATO (senza risultato) a ridefinire il metodo compare dell'interfaccia Comparator<E> solo che non riesco a implementarlo!!
Potete aiutarmi??
Come faccio a fare il confronto??
Vi posto il codice (la classe che estendo DataStruct e semplicemente una superclasse per tutte le strutture che andrò ad implementare)
codice:import java.util.PriorityQueue; public class StrPriorityQueue<E> extends DataStruct<E> implements Comparator<E>{ PriorityQueue<E> struct; public StrPriorityQueue(){ struct = new PriorityQueue<E>(); } public boolean add(E e){ double start = System.nanoTime(); struct.add(e); //ADD// double end = System.nanoTime(); tempAdd = tempAdd + (end - start); return true; } /*public E getValue(){ return valore; }*/ /*public int compare(E alfa, E beta) { if(alfa.getValue() < beta.getValue()) return -1; ....... ....... }*/ }

Rispondi quotando