我们随便定义一个求最大值哈{1,2,3,4,5,6} 求数组中最大值 方法一:取值的是数组里的元素 // int[]arr={1,2,3,4,5,6} 1(元素)的角标是0(角标从0开始)
class ArrayDemo arr[0]=1 : 就是0的角标是元素1 哦。
{
public static int geyMax(int[]arr) //首先确定数组类型,很明显是整数类型。所以选int ,同时明确目标就是求最大值哈,所以我们搞个变量getMax(函数)
{
int max =arr[0] ; //定位变量,因为我们需要一个个挨个比大小,所以我们先定义个变量,随便取数组里的元素就好
for (x=1;x<arr.length;x++) //遍历一次数组哦。 arr.length 是数组长度
{
if(int[x]>max) //该准备的东西都准备好了, 包括我们定义了变量,现在我们要做的就是,我们本身的max 也就是arr[0] 和数组里别的元素比较
max = arr[x] ; //如果被比的数比我们这个大,那么变量就储存那个大的!如 max= 1 和元素里的 2比了, max: 1<2,那么现在max =2 咯><
}
return max ;
} //函数搞完了, 我们把他调用一下, 证明可以运行哈
public static void main(String[]args) //主函数哈
{
int[]arr={1,2,3,4,5,6} //arr数组里的元素
int max = getMax(arr) //意思就是调用上面的东西,偷懒方式,复用性,比较方便使用 就是说求max 就等于上面的结果 ,如果没有错是的话 “6”
{
System.out.printlm("max="+max) //输出语句。
}
}
}
{1,2,3,4,5,6} 求数组中最大值 的方法二 :取值的是数组里的角标 *-*-是与上面的不同点
class ArrayDemo_2
{
public static int geyMax_2(int[]arr) //首先确定数组类型,很明显是整数类型。所以选int ,同时明确目标就是求最大值哈,所以我们搞个变量getMax(函数)
{
int max =0 ; //定位变量,因为我们需要一个个挨个比大小,所以我们先定义个变量,但因为是0 ,虽然没有错误,但是他代表的是“角标”哦!*-*
for (x=1;x<arr.length;x++) //遍历一次数组哦。 arr.length 是数组长度
{
if(int[x]>arr[max]) //和上面不同的是,因为我们定义的是角标,所以在这里千万要记得和比较的也是角标哦!及是 arr[max] *-*
max = arr[x] ; //如果被比的数比我们这个大,那么变量就储存那个大的!如 max= 1 和元素里的 2比了, max: 1<2,那么现在max =2 咯><
}
return arr[max] ; //记得是arr[max]哦!就是反馈角标值! *-*
} //函数搞完了, 我们把他调用一下, 证明可以运行哈
public static void main(String[]args) //主函数
{
int[]arr={1,2,3,4,5,6} //arr数组里的元素
int max = getMax_2(arr) //意思就是调用上面的东西,偷懒方式,复用性,比较方便使用 就是说求max 就等于上面的结果 ,如果没有错是的话 “6”
{
System.out.printlm("max="+max) //输出语句。
}
}
}
{1,2,3,4,5,6} 求数组中最小值 不同点 *-*标示哈
class ArrayDemo
{
public static int geyMin(int[]arr) //首先确定数组类型,很明显是整数类型。所以选int ,同时明确目标就是求最“小”值哈,所以我们搞个变量getMin(函数)
{
int min =arr[0] ; //定位变量,因为我们需要一个个挨个比大小,所以我们先定义个变量,随便取数组里的元素就好
for (x=1;x<arr.length;x++) //遍历一次数组哦。 arr.length 是数组长度
{
if(int[x]<min) //*-*小于 该准备的东西都准备好了, 包括我们定义了变量,现在我们要做的就是,我们本身的max 也就是arr[0] 和数组里别的元素比较
min = arr[x] ; //如果被比的数比我们这个大,那么变量就储存那个大的!如 max= 1 和元素里的 2比了, max: 1<2,那么现在max =2 咯><
}
return min ;
} //函数搞完了, 我们把他调用一下, 证明可以运行哈
public static void main(String[]args) //主函数哈
{
int[]arr={1,2,3,4,5,6} //arr数组里的元素
int min = getMin(arr) //意思就是调用上面的东西,偷懒方式,复用性,比较方便使用 就是说求max 就等于上面的结果 ,如果没有错是的话 “6”
{
System.out.printlm("min="+min) //输出语句。
}
}
}
第二种方法也是角标的,这里就不在重复打印了。
/*
在以上这些中 ,我们用到了 for 循环的遍历(for x=1(初始化值);x,arr.length(作用域,作用范围);x++(自增)一个for循环的基本构成) if语句 if(条件表达式)-输出语句 还有数组的基本认知,和定义,这里其实普通的数组arr[]={....} 后面还有二维数组哦arr[][] .忘了忘了, 还有 函数哈,
*/
求最值的概念基本不会有太多变化,有可能出现的变数大多在类型上,因为类型毕竟不少嘛,但是int 类型还是较多的。
这个最值我看了一次视频,一次笔记,却在脑子里过了5-10次。
感觉,做编程是的先有思路,然后在根据思路去用代码实现,但是同时我们思考不通的时候也可以,也可以从代码中判断一个人的思路,然后在去捋一捋。你或许就没那么迷惑了。
亲们,等待下次俺把选择排序,冒泡排序吃透了,在给大家继续福利哈。
|
|