LeetCode 405. Convert a Number to Hexadecimal (进制转换,移位运算)
来源:互联网 发布:淘宝 冰毒 编辑:程序博客网 时间:2024/05/22 06:23
Given an integer, write an algorithm to convert it to hexadecimal. For negative integer, two’s complement method is used.
Note:
- All letters in hexadecimal (
a-f
) must be in lowercase. - The hexadecimal string must not contain extra leading
0
s. If the number is zero, it is represented by a single zero character'0'
; otherwise, the first character in the hexadecimal string will not be the zero character. - The given number is guaranteed to fit within the range of a 32-bit signed integer.
- You must not use any method provided by the library which converts/formats the number to hex directly.
Example 1:
Input:26Output:"1a"
Example 2:
Input:-1Output:"ffffffff"输入一个整数,输出其十六进制表示的字符串。负数使用补码表示。
思路:用十进制的15(二进制的1111)作为掩码,获取最低的4位,直接查表映射成十六进制。然后右移4位,进行下次映射。
在右移位时,注意要转换成无符号整数,这样移位时才能补0,否则将添加符号位。
string toHex(int num) { if(num==0)return "0"; string ans = ""; string hexChar = "0123456789abcdef"; while (num) { ans = hexChar[num & 15] + ans; num = (unsigned)num >> 4; } return ans; }
阅读全文
0 0
- LeetCode 405. Convert a Number to Hexadecimal (进制转换,移位运算)
- LeetCode 405. Convert a Number to Hexadecimal
- [LeetCode]--405. Convert a Number to Hexadecimal
- [leetcode]405. Convert a Number to Hexadecimal
- LeetCode 405. Convert a Number to Hexadecimal
- leetcode 405. Convert a Number to Hexadecimal
- leetcode 405. Convert a Number to Hexadecimal
- LeetCode 405. Convert a Number to Hexadecimal
- LeetCode 405. Convert a Number to Hexadecimal
- 【LeetCode】 405. Convert a Number to Hexadecimal
- LeetCode 405. Convert a Number to Hexadecimal
- [LeetCode]405. Convert a Number to Hexadecimal
- Leetcode-405. Convert a Number to Hexadecimal
- LeetCode-405. Convert a Number to Hexadecimal
- 【Leetcode】405. Convert a Number to Hexadecimal
- [leetcode]405. Convert a Number to Hexadecimal
- [LeetCode]405. Convert a Number to Hexadecimal
- [leetcode]: 405. Convert a Number to Hexadecimal
- ndk开发文档
- SQLServer占CPU100%
- fasttext使用笔记
- HNCU1323: 算法2-1:集合union
- oracle 如何查看日志?
- LeetCode 405. Convert a Number to Hexadecimal (进制转换,移位运算)
- Python笔记002——错误TypeError: 'str' does not support the buffer interface
- BZOJ 1560 [JSOI2009] 火星藏宝图
- /usr/bin/ld: 找不到 -lopencv_dep_cudart
- python 列表操作 及 使用方法
- 前端开发者必备google插件
- Matlab中图形标记
- JS实例操作QQ空间自动点赞方法
- 您的安全性偏好设置仅允许安装来自 App Store 和被认可的开发者的应用