10/06/11 11:11
bogos
Ciao ragazzi! Stavo progettando un programma che utilizza l'algoritmo di ordinamento per selezione per ordinare una lista di nomi in ordine alfabetico è li passavo come parametro un arry di oggetti String. l'algoritmo funziona benissimo ma in seguito ho voluto memorizzare tali nomi in un Vector anzi che in un arry per poter usufruire dei sui metodi. Ho provato a creare una classe sovraccaricata del metodo selectionSort() ma ho notato che me li ordina in modo ordinato.
//--------------------------------------------------------------------------------
Di seguito vi pubblico il metodo che contiene il bug. Grazie in anticipo!!
//--------------------------------------------------------------------------------
Di seguito vi pubblico il metodo che contiene il bug. Grazie in anticipo!!
public static void InsertionSort(Vector vettore) { int min; String temp; for(int index=0;index<vettore.size()-1;index++) { min = index; for (int scan=index+1;scan<vettore.size();scan++) { if ( ((Comparable) vettore.elementAt(scan)).compareTo(vettore.elementAt(min))<0) min=scan; //--------------------------- temp = (String) vettore.elementAt(min); vettore.setElementAt(vettore.elementAt(index), min); vettore.setElementAt(temp, index); } } } //---------------------------------------------------- //metodo main //---------------------------------------------------- public static void main(String[] args) throws IOException, ClassNotFoundException { // TODO Auto-generated method stub Vector vector = new Vector(); vector.add("z"); vector.add("a"); vector.add("c"); vector.add("b"); vector.add("r"); vector.add("d"); vector.add("f"); Cavia.InsertionSort(vector); for(int count=0; count<vector.size();count++) { String ssd = (String) vector.elementAt(count); System.out.println(ssd); } } }
aaa