public void executaCrossover() {
        //ArrayList<Cromossomo> novaPopulacao = new ArrayList<>(tamanhoPopulacao);
        if (count > 0) {
            Iterator<Cromossomo> it = cromossomos.iterator();
            while (it.hasNext()) {
                if (!it.next().best) {
                    it.remove();
                }
            }
            int a = 0;
        }
        int probCruzamento = 0 + (int) (Math.random() * (100 - 0));
        for (int i = 0; i < 2*tamanhoPopulacao; i++) {
            int pai1 = 0 + (int) (Math.random() * (2 - 0));
            int pai2 = 0 + (int) (Math.random() * (2 - 0));
            // System.out.println(pai1 + " " + pai2);
            List<Presente> filho = new ArrayList<>(tamanhoPopulacao);
            if (probCruzamento > 99) {
                filho = Cruzamento.corte(cromossomos.get(pai1).getGenesPresente(), cromossomos.get(pai2).getGenesPresente(), 30, 60, 10);
            } else {
                for (Presente presente : cromossomos.get(0).getGenesPresente()) {
                    try {
                        filho.add(presente.clone());
                    } catch (CloneNotSupportedException ex) {
                        Logger.getLogger(AlgoritmoGenetico.class.getName()).log(Level.SEVERE, null, ex);
                    }
                }
            }
            Cromossomo f = new Cromossomo(filho);
             cromossomos.add(f);
        }
//        for (Cromossomo novoCromossomo : novaPopulacao) {
//            cromossomos.add(novoCromossomo);
//        }
        int a = 0;
    }