除去 K 个数字后最小值
描述
给定一个非负整数num表示为一个字符串,从数字中删除k个数字,以便新的数字是最小的可能。
样例
样例11
2输入: num = "1432219", k = 3
输出: "1219"
样例21
2输入: num = "10200", k = 1
输出: "200"
样例31
2输入: num = "10", k = 2
输出: "0"
思路
emm,想计算每个数的逆序数,然后逆序数大的移除,遇到的问题是处理很繁琐,而且还要考虑0的存在。参考了一份代码,尝试理解一下,可以理解为从已有的数字中选择出一些数字重新组合,这个过程肯定要选择小一些的数字,但是又不可能从全部数字中选择,下面这段代码 idx 和 i 的理解很关键,i 可以理解为选取的数字数目,但选择哪一个还是以 idx 来控制。
代码
1 | class Solution { |