ciao,vi espongo il mio problema:
In input ho una matrice triangolare,un array di stringhe e una matrice di interi.
matrice triangolare:
** j1 j2 j3 j4
j1:-1
j2: 2 -1
j3: 3 2 -1
j4: 4 2 3 -1
ho 4 lavori/stringhe:
j1:abcd
j2:bca
j3:cabc
j4:abcd
questo è il mio codice:
codice:
public class Massimo {
public boolean max(int [][] matrice,String [] job,int [][]tempoProc){
boolean I1maggiore;
int righa,colonna;
int i,j;
String[]I1 =new String[job.length];
String[]I2 =new String[job.length];
int max = -1;
//scandisco le colonne e per ogni colonna
//di quante righe è costituita la colonna j
//trovo il massimo della colonna j
for(j=0; j<matrice[0].length;j++){
for(i=0; j<matrice.length;j++){
if(matrice[i][j]>max){
max=matrice[i][j];
}
colonna=j;
righa=i;
}
//in corrispondenza del massimo trovato=indici corrispondenti
//della matrice[i][j] e inserisco le stringhe dell'array job
//che corrispondono a quelli della matrice[i][j]nell'array I1,
//gli altri nell'array I2
for(i=0;i<job.length;i++){
if((i==righa)||(i==colonna)){
I1[i]+=i;
}else
I2[i]+=i;
}
}
}
return I1maggiore;
}
Quello che non riesco a fare è questo:vorrei inserire nei due array I1 e I2 i valori(cioè le stringhe)nella posizione [i] uguale a quella della righa[i] della matrice che corrisponde al massimo trovato,
faccio un esempio per spiegare meglio:
nel mio caso il massimo della prima colonna è 4 che corrisponde a [j4][j1],quindi inserisco le due stringhe j4 e j1 dell'array job in I1 e le altre stringhe in I2,questo è quello che ho fatto io,ma invece vorrei inserire le due stringhe j4 e j1 ,che sono in posizione 3 e 0 nell'array di stringhe iniziale, nelle stesse posizioni anche nell'array I1 qundi in posizione 3 e 0.
la stessa cosa vale per I2.
Spero di essermi spiegato !!qualcuno sa come posso fare?? :master: grazie