考察的知识点:贪心;
解答方法分析:
- 初始化两个变量:count和maxHeight。初始时,count设置为1,maxHeight设置为列表中第一个元素的高度。
- 从列表的第二个元素开始向右遍历。对于每个元素:检查该元素的高度是否大于当前最大高度maxHeight。如果是,将该元素的高度赋值给maxHeight,并将count值加1。如果不是,继续向右遍历下一个元素。
- 循环结束后,返回count值作为结果,即可以看到的牛的数量。
所用编程语言:C++;
完整编程代码:↓
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param cowHeights int整型vector * @return int整型 */ int visibleCows(vector<int>& cowHeights) { int count = 1; int maxHeight = cowHeights[0]; for (int i = 1; i < cowHeights.size(); i++) { if (cowHeights[i] > maxHeight) { maxHeight = cowHeights[i]; count++; } } return count; } };