leetcode 简单 第九十五题 数字转换为十六进制数

Posted 丁壮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode 简单 第九十五题 数字转换为十六进制数相关的知识,希望对你有一定的参考价值。

给定一个整数,编写一个算法将这个数转换为十六进制数。对于负整数,我们通常使用 补码运算 方法。

注意:

  1. 十六进制中所有字母(a-f)都必须是小写。
  2. 十六进制字符串中不能包含多余的前导零。如果要转化的数为0,那么以单个字符‘0‘来表示;对于其他情况,十六进制字符串中的第一个字符将不会是0字符。 
  3. 给定的数确保在32位有符号整数范围内。
  4. 不能使用任何由库提供的将数字直接转换或格式化为十六进制的方法。

示例 1:

输入:
26

输出:
"1a"

示例 2:

输入:
-1

输出:
"ffffffff"


class Solution(object):
    def toHex(self, num):
        """
        :type num: int
        :rtype: str
        http://bookshadow.com/weblog/2016/09/25/leetcode-convert-a-number-to-hexadecimal/
        """
        ans = []
        hexs = 0123456789abcdef
        if num < 0: num += 0x100000000
        while num:
            ans.append(hexs[num % 16])
            num /= 16
        return ‘‘.join(ans[::-1]) if ans else 0

 



以上是关于leetcode 简单 第九十五题 数字转换为十六进制数的主要内容,如果未能解决你的问题,请参考以下文章

leetcode 简单 第九十六题 最长回文串

C#三十六道简单填空题

leetcode 简单 第九十二题 第N个数字

leetcode 简单 第九十七题 快乐数

第九十五节,移动流体布局和响应式布局总结

leetcode 简单 第六十五题 2的幂