Pages: [1]   Go Down
Print
Author Topic: Ultima colonna completa in array frastagliato  (Read 1907 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
dani89
Apprendista Forumista
**
Offline Offline

Posts: 254



« on: 24-05-2009, 19:53:38 »

come posso fare a determinare qual'è l'ultima colonna completa in un array bidimensionale frastagliato?
Logged
Fr3d3R!K
Forumista Eroico
*****
Offline Offline

Gender: Male
Posts: 2.463



« Reply #1 on: 24-05-2009, 20:26:33 »

Scorri le colonne controllando se il valore della posizione corrente è diverso da null. Se è uguale a null salti al prossimo ciclo (incremento contatore). Alla fine restituisci l'indice della colonna completa (se esiste), oppure -1 in caso contrario.
Saluti.
Logged

Search Button, CODE Tag, Google & Italian language are your friends! Use Them!
dani89
Apprendista Forumista
**
Offline Offline

Posts: 254



« Reply #2 on: 25-05-2009, 10:04:01 »

grazie
Logged
fabliux
Guest
« Reply #3 on: 12-06-2009, 16:16:21 »

Scorri le colonne controllando se il valore della posizione corrente è diverso da null. Se è uguale a null salti al prossimo ciclo (incremento contatore). Alla fine restituisci l'indice della colonna completa (se esiste), oppure -1 in caso contrario.
Saluti.
Qualkuno potrebbe postare qualke esempio??? grazie mille.... pray

« Last Edit: 12-06-2009, 16:31:23 by fabliux » Logged
fabliux
Guest
« Reply #4 on: 12-06-2009, 16:37:20 »


[/quote]
Qualkuno potrebbe postare qualke esempio??? grazie mille.... pray
[/quote]
UP
Logged
Daréios89
Forumista Eroico
*****
Offline Offline

Gender: Male
Posts: 2.679


La musica è la forma d'arte suprema.


« Reply #5 on: 12-06-2009, 16:48:18 »

Se non ti è chiara qualcosa chiedi, presumo sia tutto corretto fammi sapere, non mi stupirei se ancora sbaglio metodi  testate

Leggilo tutto per capirlo alcuni commenti li capirai se leggi dal for più interno.






Code:
class Esempio
{
public static void main(String []args)
{
int[][]A={{5,6,5,6},
      {2,1,1},
      {1,4,3,4}};
     
      System.out.println(metodo(A));
}




public static int metodo(int [][] A)
{
int completi=0;
int colonna=0;

     
for(int c=A.length-1; c>=0; c--) //metto l'indice alla fine della lunghezza della riga e vado al contrario cioè decrementando perchè mi serve l'ultimo
{
if(completi==A.length)      //questo  mi serve dopo che ho trovato la colonna per evitare che continui dopo che l'ho trovata, perchè mi serve la più a destra sennò continuerebbe a cercarla
break;
else
completi=0;  //altrimenti azzera completi per controllare quanti elementi ho
colonna=c;                     //questo sarà restituito dal metodo per indicarmi qual'è la colonna corrispondente.


for(int r=0; r<A.length; r++)
{


if(c<A[r].length)        //così dico se c'è la colonna incrementa completi altrimenti no perchè non abbiamo una colonna.
completi++;           //così se incrementiamo e il numero dei completi è uguale ad A.length vuol dire che è completa!!!!!!!

}

}


return colonna;
}
}


     
Logged

"Utilizzare sempre de l'Hôpital.....è come andare a caccia di farfalle con un bazooka".
fabliux
Guest
« Reply #6 on: 12-06-2009, 17:44:50 »

Se non ti è chiara qualcosa chiedi, presumo sia tutto corretto fammi sapere, non mi stupirei se ancora sbaglio metodi  testate

Leggilo tutto per capirlo alcuni commenti li capirai se leggi dal for più interno.






Code:
class Esempio
{
public static void main(String []args)
{
int[][]A={{5,6,5,6},
      {2,1,1},
      {1,4,3,4}};
     
      System.out.println(metodo(A));
}




public static int metodo(int [][] A)
{
int completi=0;
int colonna=0;

     
for(int c=A.length-1; c>=0; c--) //metto l'indice alla fine della lunghezza della riga e vado al contrario cioè decrementando perchè mi serve l'ultimo
{
if(completi==A.length)      //questo  mi serve dopo che ho trovato la colonna per evitare che continui dopo che l'ho trovata, perchè mi serve la più a destra sennò continuerebbe a cercarla
break;
else
completi=0;  //altrimenti azzera completi per controllare quanti elementi ho
colonna=c;                     //questo sarà restituito dal metodo per indicarmi qual'è la colonna corrispondente.


for(int r=0; r<A.length; r++)
{


if(c<A[r].length)        //così dico se c'è la colonna incrementa completi altrimenti no perchè non abbiamo una colonna.
completi++;           //così se incrementiamo e il numero dei completi è uguale ad A.length vuol dire che è completa!!!!!!!

}

}


return colonna;
}
}


     

mmm ...nn ne sono tanto konvinto....grazie mille però....
Logged
Daréios89
Forumista Eroico
*****
Offline Offline

Gender: Male
Posts: 2.679


La musica è la forma d'arte suprema.


« Reply #7 on: 12-06-2009, 17:47:29 »

Non sei tanto convinto riguardo la correttezza, cioè se fa quello che deve fare bene, o sul funzionamento??
Se vuoi dimmi pure.
Logged

"Utilizzare sempre de l'Hôpital.....è come andare a caccia di farfalle con un bazooka".
fabliux
Guest
« Reply #8 on: 12-06-2009, 18:15:28 »

Non sei tanto convinto riguardo la correttezza, cioè se fa quello che deve fare bene, o sul funzionamento??
Se vuoi dimmi pure.
Se fa quello che deve fare...
Logged
Daréios89
Forumista Eroico
*****
Offline Offline

Gender: Male
Posts: 2.679


La musica è la forma d'arte suprema.


« Reply #9 on: 12-06-2009, 18:16:50 »

Eh bhè....scrivi allora cosa non ti quadra così almeno me ne rendo conto anche io che come te spero di superarla sta prova!!!!

A me funziona sinceramente, gli indici delle colonne complete sono corretti da me, ricorda che la prima colonna ha indice zero.
« Last Edit: 12-06-2009, 18:20:56 by guitarplaying » Logged

"Utilizzare sempre de l'Hôpital.....è come andare a caccia di farfalle con un bazooka".
fabliux
Guest
« Reply #10 on: 12-06-2009, 18:21:35 »

Eh bhè....scrivi allora cosa non ti quadra così almeno me ne rendo conto anche io che come te spero di superarla sta prova!!!!
Certo ke la si deve passare sta prova...Sto buttando su un code...vediamo se ci riesco...e posto la mia soluzione....
Logged
fabliux
Guest
« Reply #11 on: 12-06-2009, 18:54:37 »

OK il tuo metodo funziona...mi ero konfuso io...grazie  mille....bserata...
Logged
Pages: [1]   Go Up
Print
Jump to: