首页 > 其他分享 >LEETCODE 面试题 05.02. 二进制数转字符串

LEETCODE 面试题 05.02. 二进制数转字符串

时间:2023-03-02 17:05:06浏览次数:32  
标签:面试题 res 0.5 digit 05.02 num len 取出 LEETCODE

每次将实数乘2,取出最高位的部分存到res里,实数乘2的结果再减去最高位进入下一次循环

0.625-》1.25 取出1加入res,1.25-》0.25》0.5,取出0加入res 0.5-》1 

取出1加入res,最终输入res的值0.101

class Solution(object):
def printBin(self, num):
"""
:type num: float
:rtype: str
"""
res="0."
while len(res)<=32 and num!=0:
num*=2
digit=int(num)
#print(num)
res+=str(digit)
num-=digit

return res if len(res)<=32 else "ERROR"

标签:面试题,res,0.5,digit,05.02,num,len,取出,LEETCODE
From: https://blog.51cto.com/u_15983387/6096453

相关文章

  • leetcode2565. 最少得分子序列[题解]
    最少得分子序列给你两个字符串s和t。你可以从字符串t中删除任意数目的字符。如果没有从字符串t中删除字符,那么得分为0,否则:令left为删除字符中的最小下标。......
  • 面试题
    1、clone();======>父类默认的拷贝方法是浅拷贝。父类中的修饰符是:protected。@Override重写clone()这个父类方法后,还需要把protected改为public,类型是当前重写的子类......
  • 【LeetCode二叉树#15】二叉搜索树中的众数(递归中序遍历)
    二叉搜索树中的众数力扣题目链接(opensnewwindow)给定一个有相同值的二叉搜索树(BST),找出BST中的所有众数(出现频率最高的元素)。假定BST有如下定义:结点左子树中所......
  • Android面试题汇总
    1.面试题:知道Service吗,它有几种启动方式?Service是一个专门在后台处理长时间任务的Android组件,它没有UI。它有两种启动方式,startService和bindService。startService只是......
  • 【DFS】LeetCode 17. 电话号码的字母组合
    题目链接17.电话号码的字母组合思路使用DFS进行枚举。代码classSolution{privateHashMap<Character,char[]>map=newHashMap<>();privateList<S......
  • 【DFS】LeetCode 131. 分割回文串
    题目链接131.分割回文串思路使用DFS,同时依次检查分割的字符串是否是回文串。注意:需要频繁添加删除末尾元素时,可以使用Deque代码classSolution{privateLis......
  • Leetcode——二分法bisect_left,bisect_right
    !前提——列表有序case1如果列表中没有元素x,那么bisect_left(ls,x)和bisec_right(ls,x)返回相同的值,该值是x在ls中“合适的插入点索引,使得数组有序”。此时,ls[index2]......
  • 力扣---面试题 05.02. 二进制数转字符串
     二进制数转字符串。给定一个介于0和1之间的实数(如0.72),类型为double,打印它的二进制表达式。如果该数字无法精确地用32位以内的二进制表示,则打印“ERROR”。示例1:输......
  • 校招前端二面经典面试题(附答案)
    代码输出结果functionrunAsync(x){constp=newPromise(r=>setTimeout(()=>r(x,console.log(x)),1000))returnp}functionrunReject(x){constp......
  • 那些高级前端是如何回答面试题的
    代码输出结果console.log(1);setTimeout(()=>{console.log(2);Promise.resolve().then(()=>{console.log(3)});});newPromise((resolve,reject)......