Ciao a tutti. Devo scrivere un metodo che prenda in input un array bidimensionale frastagliato A di stringhe, e restituisca un boolean che indichi se esitono due righe compatibili in A. Due righe r1 ed r2 si dicono compatibili se esiste una stringa in r1 e contemporaneamente la sua inversa in r2. Ho provato con questo codice però non funziona. Qualcuno può aiutarmi a capire dov'è l'errore?
codice:
public static boolean cerca(String [][]a)
	{
		int c=0; int z=0; boolean flag=false;
		for(int y1=0 ; y1<a.length ; y1++)
		{
			for(int y2=y1+1 ; y2<a.length ; y2++)
			{
				for(int x=0 ; x<a[y2].length ; x++)
				{
					if(a[y1][c].length()==a[y2][x].length())
					{
						z=a[y1][c].length()-1;
						for(int w=0 ; w<a[y1][c].length(); w++)
						{
							if((a[y1][c].charAt(w))==(a[y2][x].charAt(z)))
							{
								z--;
								continue;
							}
						}
						if(z==0)
						{
							flag=true;
						}
					}
					if(z==0)
						break;
				}
			}
			c=0;
		}
		return flag;
	}