stack<int>st;
vector<int>vec(数组元素个数);
//△需要变动的地方
△for(i遍历数组)
while (!st.empty()&&△st.top()nums[i])//栈顶元素与x比较 st.pop();
//如果栈为空,说明没有左面比当前元素更小的元素
if (st.empty()) vec[i]=-1 ;
else △vec[i]=st.top();
//如果栈不为空,则栈顶就是左面第一个比当前元素更小的元素
//当前元素进栈
△st.push(nums[i]);
}