Ho un codice, che implementa un insieme con una lista linkata, dove devo ordinare gli elementi secondo un SelectionSort in un metodo static factory, ma c'č un metodo che non viene invocato e non capisco perchč.
Il metodo static factory č:
Ordina l'insieme e lo restituisce, ma nel mio codice non posso utilizzare all'interno del metodo una funzione SelectionSort e non capisco perchč.codice:public static <E extends Comparable>OrderedSet270710<E> SelectionSortBuild(E[] a)
L'errore č:codice:public static <E extends Comparable>OrderedSet270710<E> SelectionSortBuild(E[] a) { SelectionSort(a); LinkedList<E> lista2=new LinkedList(); for(int i=0; i<a.length; i++) lista2.addNode(new Node(a[i])); return (OrderedSet270710)lista2; } public void swap(E[] a, int i, int j) { E tmp=a[i]; a[i]=a[j]; a[j]=tmp; } public void SelectionSort(E[] a) { int min; for(int i=0;i<a.length-1; i++) { min=i; for(int j=i+1; j<a.length; j++) { if(a[j].compareTo(a[min])<0) min=j; } swap(a, min, i); } }
Il tipo dovrebbe essere giusto...non capisco come mai non gli vada bene il parametro, dovrebbe essere lo stessocodice:SS7_003292.java:202: SelectionSort(E[]) in Insieme<E> cannot be applied to (E[]) SelectionSort(a);![]()

Rispondi quotando