/* Definisce un array, inizializzandolo per agevolare le prove Ordina l'array con l'algoritmo quick sort */ import javax.swing.JOptionPane; public class QuickSortAnimato { static int sp=3; static int n=26; public static int partiziona(int[] v, int from, int to) { int separatore=v[from]; int i=from+1; int j=to; while(i=separatore) j--; // ora j indica un valore minore di separatore // oppure è minore o uguale a i if(iseparatore) { i--; } int app=v[i]; v[i]=v[from]; v[from]=app; return i; } public static void quick(int[] v, int from, int to) // ordina l'intervallo da from a to, estremi inclusi { if(from>=to) return; else { int separazione=partiziona(v, from, to); stampaZona(from, separazione, to); stampaArray(v, from, to); quick(v, from, separazione-1); quick(v, separazione+1, to); } } public static void quickSort(int[] v) { quick(v, 0, v.length-1); } public static int[] leggiArrayInt() { // int[] a={5,sp,7,8,210,3sp,6sp,2,3,5sp,6}; int[] a=new int[26]; for(int i=0; i