Pages: [1]   Go Down
Print
Author Topic: Colonne uguali  (Read 781 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
Jack&Daxter
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 398



« on: 21-01-2011, 18:04:29 »

Ragazzi come faccio a capire se all'interno di una matrice esistono 2 colonne uguali?
Logged
KingDavid
Forumista
***
Offline Offline

Posts: 788


Alla fine [...] tutta la realtà è binaria.


« Reply #1 on: 21-01-2011, 19:02:18 »

Ragazzi come faccio a capire se all'interno di una matrice esistono 2 colonne uguali?
in modo analogo di come faresti a capire se ci sono due righe uguali...
Logged

Basti pensare che un ipotetico quadrato di specchi, lungo 200 chilometri per ogni lato, potrebbe produrre tutta l'energia necessaria all'intero pianeta.
(Carlo Rubbia)
Jack&Daxter
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 398



« Reply #2 on: 21-01-2011, 19:04:26 »

il problema è ke nn so fare neanke quello 
Logged
Seppho
Matricola
*
Offline Offline

Gender: Male
Posts: 44



« Reply #3 on: 21-01-2011, 22:59:40 »

io confronterei i valori i-esimi di ogni colonna/riga con i rispettivi valori delle colonne/righe successive..
Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #4 on: 21-01-2011, 23:30:25 »

per colonne o righe identiche intendi che le suddette devono avere lo stesso identico ordine di elementi o va bene anche se sono gli stessi ma in ordine diverso?

se devono essere proprio uguali anche nell'ordine allora una possibile soluzione frettolosa potrebbe essere:

Code:
//controllo righe uguali
boolean diverse=false;
for(int i=0;i<A.length-1;i++)
for(int m=i+1;m<A.length;m++)
{
diverse=false;
for(int j=0;j<A[0].length && !diverse;j++)
if(A[i][j]!=A[m][j])
diverse=true;
if(!diverse)
return true;
}
return false;


//controllo colonne uguali
boolean diverse=false;
for(int i=0;i<A[0].length-1;i++)
for(int m=i+1;m<A[0].length;m++)
{
diverse=false;
for(int j=0;j<A.length && !diverse;j++)
if(A[j][i]!=A[j][m])
diverse=true;
if(!diverse)
return true;
}
return false;


ovviamente ho solo improvvisato il codice che fa il controllo quindi se lo vuoi provare ci devi mettere tutto il contorno del caso :-)
« Last Edit: 21-01-2011, 23:43:02 by StephCT » Logged

"Che la Forza sia con Te"
Pages: [1]   Go Up
Print
Jump to: