Algoritmo Heap em Java/Ajuda

Nao sei o que esta de errado, ja verifiquei todos os dados, mas nao consigo compila-lo

Por favor se alguem conseguir ficarei muito grato…

public class AlgoritmoHeap
{
public static void main(String[] args)
{
double a,b,c,d;
a= Double.parseDouble(args[0]);
b= Double.parseDouble(args[1]);
c= Double.parseDouble(args[2]);
d= Double.parseDouble(args[3]);

	int n, dir, esq;
	int i, x, j;

	
		esq = (4/2) +1;
		dir=4;
		
		while (esq>1)
		{
			esq=esq-1;
	        i=esq;
	        j=2*i;
	        x=i;
		}
		
						int i, x, j;
				while (j<=dir) || (x<j)
				{
					if ((j < dir) || (j < j+1))
					{
						j= j+1;
					}

				}
					if (x<j)
					{
							i= j;
							i= j;
							j= 2 * i;
					}
					      i= x;


			while (dir>1)
				{
				x=1;
			   a=dir;
				dir=x;
				dir=dir -1;

		i=esq;
		j=2 * i;
		x=i;

}

while ((j <= dir) || (x< j))
{
if ((j < dir) || (j<j+1))
{
j= j+1;
}
if (x < j)
{
i=j;
i=j;
j=2 * i;
}
i=x;

}

}

}

ó… agora compilou.

vc estava declarando 2 vezes x, i e j, e não estava inicializando-os. além disso faltava 2 parênteses…

Não testei se funciona, só fiz compilar…

public class AlgoritmoHeap
{
public static void main(String[] args)
{
double a,b,c,d;
a= Double.parseDouble(args[0]);
b= Double.parseDouble(args[1]);
c= Double.parseDouble(args[2]);
d= Double.parseDouble(args[3]);

int n, dir, esq;
int i = 0, x = 0, j = 0;

esq = (4/2) +1;
dir=4;

while (esq>1)
{
esq=esq-1;
i=esq;
j=2*i;
x=i;
}

while ((j<=dir) || (x<j))
{
if ((j < dir) || (j < j+1))
{
j= j+1;
}

}
if (x<j)
{
i= j;
i= j;
j= 2 * i;
}
i= x;

while (dir>1)
{
x=1;
a=dir;
dir=x;
dir=dir -1;

i=esq;
j=2 * i;
x=i;
}

while ((j <= dir) || (x< j))
{
if ((j < dir) || (j<j+1))
{
j= j+1;
}
if (x < j)
{
i=j;
i=j;
j=2 * i;
}
i=x;

}

}
}