码迷,mamicode.com
首页 > 其他好文 > 详细

剑指No1

时间:2020-05-14 19:23:58      阅读:65      评论:0      收藏:0      [点我收藏+]

标签:条件   and   检验   print   void   mes   public   遍历   row   

在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
public static void main(String [] args){
int value = 563;
int times = 0;
int n = 10;
int arry[][] = new int[n][n];
//随机生成满足条件的二维数组
for(int i = 0;i<arry.length;i++){
for(int j=0;j<arry[i].length;j++){
if(j==0) {
if(i == 0) {
arry[i][j] = (int) (Math.random() * 100) + 1;
}else{
int rowgap = (int)(Math.random()*100)+1;
arry[i][j] = arry[i-1][j]+rowgap;
}
}else{
if(i ==0){
int columgap = (int)(Math.random()*100)+1;
arry[i][j] = arry[i][j-1]+columgap;
}else{
int rowcolgap = (int)(Math.random()*100)+1;
if(arry[i-1][j]<arry[i][j-1]){
arry[i][j] = arry[i][j-1]+rowcolgap;
}else{
arry[i][j] = arry[i-1][j]+rowcolgap;
}
}
}
}
}
//遍历输出数组 检验数组是否构造正确
for( int i = 0 ;i<arry.length;i++){
for(int j = 0;j<arry[i].length;j++){
if(j<n-1){
System.out.print(arry[i][j]+" ");
}else{
System.out.println(arry[i][j]);
}
}
}
//遍历查找二维数组中是否存在该值
int row = arry.length -1 ;
int colum = 0;
for (int k = row;k>=0; k --){
for(int b = colum ;b<arry.length; b ++){
if(value == (arry[row][colum])){
times =times +1;
System.out.print("Exist the value of "+value+"查找次数为"+times);
}else if(value>(arry[row][colum])){
times = times + 1;
colum =colum + 1;
}else{
times = times + 1;
row = row -1;
break;
}
}
}
System.out.println("查找次数为"+times+"Not exist the value of "+value);
}

剑指No1

标签:条件   and   检验   print   void   mes   public   遍历   row   

原文地址:https://www.cnblogs.com/teyues/p/12890448.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!