模板题目:Base Conversion( LeetCode: Base 7, LeetCode: Convert to Base -2)

进制转换:
二进制 十进制 N进制之间的任意转换

大多数题目都是十进制和其他进制之间的转化。因为只有十进制可以正常使用加减乘除。
在这些进制中间 只有十进制和二进制是最特殊的。因为十进制是我们常用的 二进制是计算机的根基。

但是我们同时也要注意,这种题目大多数时候 题干要求千奇百怪,各种边界条件层出不穷。(比如说 我们要处理负号 或者说 我们要把最后结果用String的形式输出,或者说给定的是个String)
同时 不管怎么样 / %是我们解决这类问题的核心和利器。

public class Solution {
    public String convertToBase7(int num) {
        int base = 1, result = 0;
        while (num != 0) {
            result += base * (num % 7);
            num /= 7;
            base *= 10;
        }
        return String.valueOf(result);
    }
}
posted @ 2020-12-18 06:42  EvanMeetTheWorld  阅读(22)  评论(0)    收藏  举报