Golang | Leetcode Golang题解之第402题移掉K位数字

题目:

题解:

Go 复制代码
func removeKdigits(num string, k int) string {
    stack := []byte{}
    for i := range num {
        digit := num[i]
        for k > 0 && len(stack) > 0 && digit < stack[len(stack)-1] {
            stack = stack[:len(stack)-1]
            k--
        }
        stack = append(stack, digit)
    }
    stack = stack[:len(stack)-k]
    ans := strings.TrimLeft(string(stack), "0")
    if ans == "" {
        ans = "0"
    }
    return ans
}
相关推荐
YGGP20 分钟前
【Golang】LeetCode 21. 合并两个有序链表
leetcode·链表·golang
看见繁华23 分钟前
GO 教程
开发语言·后端·golang
小袁顶风作案24 分钟前
leetcode力扣——135.分发糖果
算法·leetcode·职场和发展
Yy_Yyyyy_zz26 分钟前
深入理解 Go 的多返回值:语法、编译原理与工程实践
开发语言·后端·golang
YGGP1 小时前
【Golang】LeetCode 19. 删除链表的倒数第 N 个节点
算法·leetcode·链表
天远云服1 小时前
Fintech硬核架构:解析天远贷前风险报告接口在Go微服务中的解析策略
微服务·架构·golang
平生不喜凡桃李1 小时前
Leetcode-240 :搜索二维矩阵
leetcode·矩阵·深度优先
Grassto2 小时前
Go 在哪里找第三方包?Module 查找顺序详解
开发语言·后端·golang
橘颂TA2 小时前
【剑斩OFFER】算法的暴力美学——面试题 01.02 :判定是否互为字符串重排
c++·算法·leetcode·职场和发展·结构与算法
Tisfy2 小时前
LeetCode 1390.四因数:因数分解+缓存
算法·leetcode·缓存