Está en la página 1de 1

HEURÍSTICA DE FIRST FIT

int c = Integer.parseInt(capacidad.getText());
int n = Integer.parseInt(cantidad.getText());
int volumen[]=new int[n];
// Se obtiene todo los peso[i]
for (int i = 0; i < n; i++) {
volumen[i] = Integer.parseInt(valor.getValueAt(i, 1).toString());
}
int Matriz[][]=new int[n][n+2]; c= Capacidad de la caja.

// Inicializar el número de contenedores n= Cantidad de artículos para almacenar.


int numero = 0;
Volumen[i]= Volumen de cada artículo
obtenidos de la tabla valor fila i columna 1.
// Crear un array para almacenar los artículos
restantes
// Puede haber como máximo n cajas
int cajas[]=new int[n];

// Coloca los artículos uno por uno


for (int i=0; i<n; i++) {
// Encuentra la primera caja que puede acomodar
// peso[i]
int j;
for (j=0; j<numero; j++) {
if (cajas[j] >= volumen[i]) {
cajas[j] = cajas[j] - volumen[i];
break;
}
}

// Si ninguna caja puede acomodar el peso[i]


if (j==numero) {
cajas[numero] = c - volumen[i];
numero++;
}
// Se almacena los pesos encontrados para cada caja
Matriz[j][i]=volumen[i];
}

resultado.append(" .....::RESULTADO::.....\n \n"


+ "Número de cajas requeridos en First Fit = "+numero+"\n\n");
int valor=0; int contar=0;
for (int i = 0; i < numero; i++) {
int suma=0;
for (int j = 0; j < n; j++) {
valor=Matriz[i][j];
resultado.append(valor+" ");
suma=suma+valor;
}
contar=i+1;
resultado.append("Caja "+contar+" Vol.Total = "+suma+"\n");
}

También podría gustarte