void demo(int tam_vec, double factor){ Vector<Dni> v = bank_gen(tam_vec); InsertionSort<Dni> is; BubbleSort<Dni> bs; ShellSort<Dni> ss(factor); QuickSort<Dni> qs; MergeSort<Dni> ms; cout << "Vector: "; v.mostrar(); cout << " ## InsertionSort: " << endl; is.ordenar(v, v.getSize()); cout << "Vector: "; v.mostrar(); cout << " ## BubbleSort: " << endl; bs.ordenar(v, v.getSize()); cout << "Vector: "; v.mostrar(); cout << " ## ShellSort: " << endl; ss.ordenar(v, v.getSize()); cout << "Vector: "; v.mostrar(); cout << " ## QuickSort: " << endl; qs.ordenar(v, v.getSize()); cout << "Vector: "; v.mostrar(); cout << " ## MergeSort: " << endl; ms.ordenar(v, v.getSize()); }
void estadistica(int n_pruebas, int tam_vec, double factor){ //Instanciacion del banco de pruebas Vector<Dni>* bank_pruebas = new Vector<Dni>[n_pruebas]; srand(time(NULL)); //Instanciar algoritmos InsertionSort<Dni> is; BubbleSort<Dni> bs; ShellSort<Dni> ss(factor); QuickSort<Dni> qs; MergeSort<Dni> ms; //Aplicar algoritmos al banco de pruebas for(int i = 0; i < n_pruebas; i++){ bank_pruebas[i] = bank_gen(tam_vec); cout << "Vector " << i << " : "; bank_pruebas[i].mostrar(); cout << " ## InsertionSort: " << endl; is.ordenar(bank_pruebas[i], bank_pruebas[i].getSize()); cout << "Vector : "; bank_pruebas[i].mostrar(); cout << " ## BubbleSort: " << endl; bs.ordenar(bank_pruebas[i], bank_pruebas[i].getSize()); cout << "Vector: " ; bank_pruebas[i].mostrar(); cout << " ## ShellSort: " << endl; ss.ordenar(bank_pruebas[i], bank_pruebas[i].getSize()); cout << "Vector: " ; bank_pruebas[i].mostrar(); cout << " ## QuickSort: " << endl; qs.ordenar(bank_pruebas[i], bank_pruebas[i].getSize()); cout << "Vector: " ; bank_pruebas[i].mostrar(); cout << " ## MergeSort: " << endl; ms.ordenar(bank_pruebas[i], bank_pruebas[i].getSize()); cout << "~~~~~~" << endl; } bs.setAvg( (double)bs.getTot() / n_pruebas); is.setAvg( (double)is.getTot() / n_pruebas); ss.setAvg( (double)ss.getTot() / n_pruebas); qs.setAvg( (double)qs.getTot() / n_pruebas); ms.setAvg( (double)ms.getTot() / n_pruebas); cout << endl; cout << "Estadisticas" << endl; cout << "Algoritmo " << " min " << " avg " << " max " << " total" << endl; cout << setprecision(5); cout << "InsertionSort " << is.getMin() << " " << is.getAvg() << " " << is.getMax() << " " << is.getTot() << endl; cout << "BubbleSort " << bs.getMin() << " " << bs.getAvg() << " " << bs.getMax() << " " << bs.getTot() << endl; cout << "ShellSort " << ss.getMin() << " " << ss.getAvg() << " " << ss.getMax() << " " << ss.getTot() << endl; cout << "QuickSort " << qs.getMin() << " " << qs.getAvg() << " " << qs.getMax() << " " << qs.getTot() << endl; cout << "MergeSort " << ms.getMin() << " " << ms.getAvg() << " " << ms.getMax() << " " << ms.getTot() << endl; }