ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

力扣504(java)-七进制数(简单)

2022-07-02 18:32:37  阅读:228  来源: 互联网

标签:java 进制 示例 力扣 num 即可 字符串 sb 504


题目:

给定一个整数 num,将其转化为 7 进制,并以字符串形式输出。

 

示例 1:

输入: num = 100
输出: "202"
示例 2:

输入: num = -7
输出: "-10"
 

提示:

-107 <= num <= 107

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/base-7
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解题思路:

按照十进制转换成七进制的思路进行转换模拟即可:

三种情况,num > 0 、 num < 0 和 num == 0:

1. num == 0时,直接返回字符串0即可;

2.当num > 0时

  • 写一个do while 循环,先对 num与 7进行取余,添加到结果中;
  • 然后再对 num 与 7 进行取商,这样下一次取余的num就为上一次相除所得的商;
  • 直到num ==0 时结束循环;

3.当num < 0时,与当 num > 0时运算过程一样,先将负数取相反数,最终添加一个负号即可。

4.最终将余数结果反转,将数字穿换成字符串返回即可。

代码:

 1 class Solution {
 2     public String convertToBase7(int num) {
 3         StringBuilder sb = new StringBuilder();
 4         if(num  == 0) return "0";
 5         int n = Math.abs(num);
 6         do{
 7             sb.append(n % 7);
 8             n /= 7;
 9         }while(n != 0);
10         if(num < 0){
11             sb.append("-");
12         }
13         return sb.reverse().toString();
14     }
15 }

标签:java,进制,示例,力扣,num,即可,字符串,sb,504
来源: https://www.cnblogs.com/liu-myu/p/16438114.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有