LeetCode刷题(0007)---504. 七进制数,python

目录

  • LeetCode---504. 七进制数
    • 01题目描述:
    • 02题目分析:
    • 03解答:
      • 运行结果:
      • 3.1耗时分布情况
      • 3.2内存使用情况
    • 04结语:

LeetCode—504. 七进制数

01题目描述:

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

示例


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

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

注意: 输入范围是 [-1e7, 1e7] 。

02题目分析:

首先要注意到的是输出的范围是[-1e7, 1e7],。我刚刚开始就没有考虑到这一个问题。正常来说输入一个 -7 应该输出的结果是 -10 ,但是我的输出是 1-0 这一个符号 - 的位置没有处理好。所以我就在前面直接的 abs 一哈。再去处理,这样的话无论是正数还是负数的处理方式都是一样。但是这样的话,正负都一样了啊,所以在题目的最前面设置一个 flag ,默认是 0 ,接着判断,如果是 num>0 的话就赋值为 flag=1 .这样就把正负区分开来了.最后返回 return 的时候判断一哈,是否拼接符号 - 就可以了!

03解答:


class Solution:
    def convertToBase7(self, num: int) -> str:
        str1 = ''
        flag =0
        if abs(num)==num:
            flag=1
        num = abs(num)
        while num >6:
            Remainder = num%7
            num = num // 7
            str1 = str1 + str(Remainder)
        str1 = str1+str(num)
        if flag==1:
            return str1[::-1]
        else:
            return '-'+str1[::-1]
            

运行结果:

LeetCode刷题(0007)---504. 七进制数,python_第1张图片

3.1耗时分布情况

LeetCode刷题(0007)---504. 七进制数,python_第2张图片

3.2内存使用情况

LeetCode刷题(0007)---504. 七进制数,python_第3张图片

04结语:

个人记录,新手入门,多多学习,欢迎大家交流探讨!
个人网站: http://106.54.78.238/
song_of _sea的个人网站 http://106.54.78.238/

你可能感兴趣的:(LeetCode,python3,进制转化)