[栈] leetcode 402 Remove K Digits
Posted fish1996
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[栈] leetcode 402 Remove K Digits相关的知识,希望对你有一定的参考价值。
problem:https://leetcode.com/problems/remove-k-digits
单调栈。维护一个递增的栈,每pop一次意味着移除了一个元素,k--。减为0时不再移除。前导0处理起来很麻烦,很容易WA。
class Solution public: string removeKdigits(string num, int k) string res; for(int i = 0;i < num.size(); i++) if(res.size() && res.front() == ‘0‘) res = res.substr(1); while(k && !res.empty() && num[i] < res.back()) res.pop_back(); k--; res.push_back(num[i]); while(k && res.size()) k--; res.pop_back(); return res.empty() ? "0" : res; ;
以上是关于[栈] leetcode 402 Remove K Digits的主要内容,如果未能解决你的问题,请参考以下文章
每日一题- Leetcode 402. Remove K Digits