Java 题解 | #牛群的可视高度#
牛群的可视高度
https://www.nowcoder.com/practice/942d0585a5654dbb9d5000feaa4e177e
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param cowHeights int整型一维数组 * @return int整型 */ public int visibleCows (int[] cowHeights) { // write code here int mx = -1, res = 0; for (int x : cowHeights) { if (mx < x) { res += 1; mx = x; } } return res; } }
编程语言是Java。
该题考察的知识点是遍历列表,并比较元素与之前最大值的大小关系。
代码的文字解释如下:
-
mx
来记录当前遍历到的最大牛的高度,初始值设为-1。 -
res
来记录可见的牛的数量,初始值设为0。 - 遍历给定的牛的高度列表
cowHeights
中的每个元素x
。 - 如果当前牛的高度大于
mx
,则将res
值加一,表示找到了一个可见的牛,同时更新mx
的值为当前牛的高度。 - 最后返回
res
的值,即可见牛的数量。