题解 | #牛的生长情况# 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 int n = weights.length; int[] result = new int[n]; for (int i = 0; i < n; i++) { result[i] = -1; for (int j = i + 1; j < n; j++) { if (weights[j] > weights[i]) { result[i] = j - i; break; } } } return result; } }
该代码使用的编程语言是Java。
该题考察的知识点是数组的遍历和比较。
代码的文字解释如下:
定义了一个名为weightGrowth
的函数,该函数接受一个整型向量weights
作为输入,并返回一个整型向量作为输出。
在函数中,首先创建一个空的整型向量test
,用于存储结果。
通过遍历输入的weights
向量,对于每个元素,将其对应位置的值初始化为-1。然后再次遍历后面的元素,如果发现后面的元素比当前元素大,则计算两者的索引差并将其赋值给test
向量中对应位置的元素。
返回整型向量test
作为结果。