Golang | Leetcode Golang题解之第405题数字转换为十六进制数

题目:

题解:

Go 复制代码
func toHex(num int) string {
    if num == 0 {
        return "0"
    }
    sb := &strings.Builder{}
    for i := 7; i >= 0; i-- {
        val := num >> (4 * i) & 0xf
        if val > 0 || sb.Len() > 0 {
            var digit byte
            if val < 10 {
                digit = '0' + byte(val)
            } else {
                digit = 'a' + byte(val-10)
            }
            sb.WriteByte(digit)
        }
    }
    return sb.String()
}
相关推荐
mask哥5 小时前
力扣算法java实现汇总整理(上)
java·算法·leetcode
流年如夢9 小时前
栈和列队(LeetCode)
数据结构·算法·leetcode·链表·职场和发展
2501_9318037512 小时前
Go:一门为解决C语言痛点而生的现代语言
c语言·开发语言·golang
geovindu12 小时前
go: Interpreter Pattern
开发语言·设计模式·golang·解释器模式
星星码️14 小时前
LeetCode刷题简单篇之反转字母
c++·算法·leetcode
平凡但不平庸的码农17 小时前
Go Channel详解
开发语言·后端·golang
子安柠17 小时前
深入理解 Go 语言文件操作:从基础到最佳实践
开发语言·后端·golang
Achou.Wang17 小时前
go语言中使用等待组(waitgroups)和内存屏障(barriers)进行同步
开发语言·后端·golang
sheeta199818 小时前
LeetCode 每日一题笔记 日期:2026.05.10 题目:2770. 达到末尾下标所需的最大跳跃次数
笔记·算法·leetcode
shehuiyuelaiyuehao19 小时前
算法21,搜索插入位置
python·算法·leetcode