public class experiment5
{
public boolean comPareLine(int i,int j,int arr[][])
{
if(arr[i][(j%4)]>=arr[i][((j+1)%4)]&&arr[i][j]>=arr[i][((j+2)%4)]&&arr[i][j]>=arr[i][((j+3)%4)])
return true;
return false;
}
public boolean comPareColum(int i,int j,int arr[][])
{
if(arr[(i%4)][j]<=arr[((i+1)%4)][j]&&arr[i][j]<=arr[((i+2)%4)][j]&&arr[i][j]<=arr[((i+3)%4)][j])
return true;
return false;
}
public static void main(String args[])
{
experiment5 tt=new experiment5();
/* int arr[][]=new int[4][4];
for(int i=0;i<4;i++)
for(int j=0;j<4;j++)
arr[i][j]=(int)(Math.random()*100);*///这里自定义一个带有鞍点的数组来作为测试
int arr[][]={{4,3,2,1},{5,6,7,8},{9,10,11,12},{13,14,15,16}};
System.out.print("产生的二维数组是:\n");
for(int i=0;i<4;i++)
{
for(int j=0;j<4;j++)
System.out.print(arr[i][j]+" ");
System.out.println();
}
System.out.println("===========================================");
System.out.println("===========================================");
System.out.println("===========判断各个点是否是鞍点============");
System.out.println("===========================================");
//================================================
for(int i=0;i<4;i++)
for(int j=0;j<4;j++)
if(tt.comPareLine(i,j,arr)&&tt.comPareColum(i,j,arr))
System.out.println("arr["+i+"]"+"["+j+"]="+arr[i][j]+" "+"是鞍点");
else
System.out.println("arr["+i+"]"+"["+j+"]="+arr[i][j]+" "+"不是鞍点");
}
}
查找4*4矩阵里的鞍点
最新推荐文章于 2023-03-12 20:53:41 发布