题解 | #牛的生长情况# java
牛的生长情况
https://www.nowcoder.com/practice/5f67258999bd4e61a361f4d3017a3fd4
import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param weights int整型一维数组
* @return int整型一维数组
*/
public int[] weightGrowth (int[] weights) {
// write code here
List<Integer> growth = new ArrayList<>();
for (int i = 0; i < weights.length; ++i) {
int k = 1;
for (int j = i; j < weights.length; ++j) {
if (weights[j] > weights[i]) {
growth.add(j - i);
k = 0;
break;
}
}
if (k == 1)
growth.add(-1);
}
// Convert the List to an array
int[] result = new int[growth.size()];
for (int i = 0; i < growth.size(); i++) {
result[i] = growth.get(i);
}
return result;
}
}
编程语言是Java。
该题考察的知识点包括:
- 使用数组和循环处理数据。
- 列表(List)或数组(Array)的基本操作和元素访问。
- 利用嵌套循环查找满足特定条件的元素。
代码的文字解释:
weightGrowth方法,接受一个整型数组weights作为输入,并返回一个整型数组作为输出。该方法的目标是计算输入数组weights中每个元素的增长指数。增长指数表示从当前位置开始往后查找,找到第一个大于当前元素值的索引与当前位置索引之差,如果找不到,则返回-1。
通过嵌套的循环遍历数组weights,并根据条件判断找到每个元素的增长指数,并将结果存储在一个列表(List)中。最后,将列表转换为数组并返回。

腾讯成长空间 5958人发布