题目考察的知识点:栈是一种特殊的线性表,是限定仅在一端(通常是表尾),进行插入和删除操作的线性表。又称为后进先出(Last In First Out)的线性表,简称LIFO结构。

题目解答方法的文字分析:将数组遍历,然后比较,不推荐,没用栈

#include <functional>
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param weights int整型vector 
     * @return int整型vector
     */
    vector<int> weightGrowth(vector<int>& weights)
    {
        // write code here
        vector<int> growth;
        for (int i = 0; i < weights.size(); ++i)
        {
            int k = 1;
            for (int j = i; j < weights.size(); ++j)
            {
                if (weights[j] > weights[i])
                {
                    growth.push_back(j - i);
                    k = 0;
                    break;
                }
            }
            if (k)
                growth.push_back(-1);
        }
        return growth;
    }
};