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 ma non funziona, qualcuno può aiutarmi a capire dov'è l'errore?
codice:
public static boolean cerca(String [][]a)
	{
		int z=0; boolean flag=false;
		for(int y1=0 ; y1<a.length ; y1++)
		{
			for(int x1=0 ; x1<a[y1].length ; x1++)
			{
				for(int y2=y1+1 ; y2<a.length ; y2++)
				{
					for(int x2=0 ; x2<a[y2].length ; x2++)
					{
						if(a[y1][x1].length()==a[y2][x2].length())
						{
							z=a[y1][x1].length()-1;
							for(int w=0 ; w<a[y1][x1].length(); w++)
							{
								if(a[y1][x1].charAt(w)==a[y2][x2].charAt(z))
								{
									z--;
								}
							}
							if(z<a[y2][x2].length())
							{
								flag=true;
							}
						}
						if(z==0)
							break;
					}
					if(z==0)
					break;
				}
				if(z==0)
					break;
			}
		}
		return flag;
	}