题解 | #牛群的可视高度#

牛群的可视高度

https://www.nowcoder.com/practice/942d0585a5654dbb9d5000feaa4e177e?tpId=354&tqId=10588389&ru=/exam/oj&qru=/ta/interview-202-top/question-ranking&sourceUrl=%2Fexam%2Foj

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param cowHeights int整型一维数组
     * @return int整型
     */
   public int visibleCows (int[] cowHeights) {
        int [] tempMax = new int[cowHeights.length];
        int max = cowHeights[0];
        tempMax[0] = max;
        int count = 0;
        for (int i = 1; i < cowHeights.length; i++) {
            if(cowHeights[i]>max){
                max = cowHeights[i];
            }
            tempMax[i] = max;
        }
        for (int i = 1; i < cowHeights.length; i++) {
            if(tempMax[i]<=cowHeights[i]&&tempMax[i]!=tempMax[i-1]){
                count++;
            }
        }
        return count+1;
    }
}

本题知识点分析:

1.数组遍历

2.贪心算法

3.数学模拟

本题解题思路分析:

1.第一个遍历获取每一个索引时刻的最大值

2.第二个遍历,如果当前索引时刻最大值小于等于当前值并且索引时刻最大值不产生第二次连续count++

3.返回count+1,因为i=1开始

4.最后发现貌似一次遍历就可以了,边更新Max,边用if判断不就好了.......

本题使用编程语言: Java

全部评论

相关推荐

Rena1ssance_:对的,要是面评没太烂,勤更新简历等捞就行了,腾讯可以无限复活
点赞 评论 收藏
分享
点赞 评论 收藏
分享
06-04 18:37
门头沟学院 Java
勇敢的ssr求对象:前面看的有点奔溃,看到只有你是真玩啊,忍不住笑出了声😂
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务