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
}
相关推荐
慕容青峰18 分钟前
【LeetCode 1925. 统计平方和三元组的数目 题解】
c++·算法·leetcode
独自破碎E1 小时前
如何用最短替换让字符串变平衡?
java·开发语言·算法·leetcode
Swift社区1 小时前
LeetCode 446 - 等差数列划分 II - 子序列
算法·leetcode·职场和发展
普贤莲花2 小时前
得物面试总结20251210
程序人生·算法·leetcode
flashlight_hi3 小时前
LeetCode 分类刷题:987. 二叉树的垂序遍历
数据结构·算法·leetcode
谈笑也风生4 小时前
经典算法题详解之切分数组(一)
数据结构·算法·leetcode
长安er4 小时前
LeetCode 167/15 两数之和与三数之和-双指针1
算法·leetcode·双指针·两数之和·三数之和
古城小栈5 小时前
Go实现的区块链 分片技术优化
golang·区块链·php
小白程序员成长日记6 小时前
2025.12.09 力扣每日一题
数据结构·算法·leetcode