i.p:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 15
o/p:
10 11 7 6 5 9 13 14 15 16 12 8 4 3 2 1
public class NewClass2
{
void print(int br[])
{
for(int i=br.length-1;i>=0;i--)
{
System.out.print(br[i]+" ");
}
}
void reversespiral(int ar[][],int n,int br[])
{
int l=0,t=0,r=n-1,b=n-1,c=0;
while(t<b && l<r)
{
for(int i=l;i<=r;i++)
{
br[c++]=ar[t][i];
}
t++;
for(int i=t;i<=b;i++)
{
br[c++]=ar[i][r];
}
r--;
for(int i=r;i>=l;i--)
{
br[c++]=ar[b][i];
}
b--;
for(int i=b;i>=t;i--)
{
br[c++]=ar[i][l];
}l++;
}
}
public static void main(String args[])
{
NewClass2 ob=new NewClass2();
int n=4,c=1;
int ar[][]=new int[n][n];
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
ar[i][j]=c++;
}
}
int br[]=new int[n*n];
ob.reversespiral(ar,n,br);
ob.print(br);
}
}
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 15
o/p:
10 11 7 6 5 9 13 14 15 16 12 8 4 3 2 1
public class NewClass2
{
void print(int br[])
{
for(int i=br.length-1;i>=0;i--)
{
System.out.print(br[i]+" ");
}
}
void reversespiral(int ar[][],int n,int br[])
{
int l=0,t=0,r=n-1,b=n-1,c=0;
while(t<b && l<r)
{
for(int i=l;i<=r;i++)
{
br[c++]=ar[t][i];
}
t++;
for(int i=t;i<=b;i++)
{
br[c++]=ar[i][r];
}
r--;
for(int i=r;i>=l;i--)
{
br[c++]=ar[b][i];
}
b--;
for(int i=b;i>=t;i--)
{
br[c++]=ar[i][l];
}l++;
}
}
public static void main(String args[])
{
NewClass2 ob=new NewClass2();
int n=4,c=1;
int ar[][]=new int[n][n];
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
ar[i][j]=c++;
}
}
int br[]=new int[n*n];
ob.reversespiral(ar,n,br);
ob.print(br);
}
}
No comments:
Post a Comment