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

二进制字节与字符串之间的转换 怎样使图片字节转化为字符串,有相关的操作说明 立即下载

二进制数转字符串。给定一个介于0和1之间的实数(如0.72),类型为double,打印它的二进制表达式。如果该数字无法精确地用32位以内的二进制表示,则打印“ERROR”。

示例1:

 输入:0.625
 输出:"0.101"

示例2:

 输入:0.1
 输出:"ERROR"
 提示:0.1无法被二进制准确表示

提示:

  • 32位包括输出中的 "0." 这两位。
  • 题目保证输入用例的小数位数最多只有 6 位

思路:本题目简单地二进制转换问题

十进制的小数转换为二进制的方法为 十进制小数乘2,取出整数作为二进制小数第一位,余下的小数再乘以2,取出整数作为小数第二位,如此反复,直至余下的小数为0。

例:

十进制  0.375

0.375 * 2 = 0.75  ———— 0 (0.75的整数部分为0)

0.75 * 2   = 1.5    ———— 1(1.5的整数部分为1)

0.5 * 2 = 1           ———— 1(1的整数部分为1,且没有余数)

则二进制小数位 0.011

十进制  0.675

0.625 * 2 = 1.25  ———— 1(1.25的整数部分为1)

0.25 * 2   = 0.5  ————   0(0.5的整数部分为0)

0.5 * 2 = 1           ———— 1(1的整数部分为1,且没有余数)

则二进制小数位 0.101

十进制  0.38

0.38 * 2 = 0.76   ———— 0(0.76的整数部分为0)

0.76* 2   = 1.52  ————  1(1.52的整数部分为1)

0.52* 2 = 1.04    ———— 1(1.04的整数部分为1)

0.04*2 = 0.08     ———— 0  (0.08的整数部分为0)

.......

则二进制小数位 0.0110........
 

class Solution {
public:
    string printBin(double num) {
        string str ="0.";
        int sum = 0;
        while(sum<32&&num){
            num*=2;
            sum++;
            if(num>=1){
                str.push_back('1');
                num-=1;
            } 
            else str.push_back('0');
        }
        return sum>=32?"ERROR":str;
    }
};

二进制与字符串之间的转换类CBinary CBinary类,处理二进制与字符串之间的转换 立即下载

相关推荐

告别手动输入!用Access批量导入307种土壤数据到SWAT模型(附完整MDB操作流程)

本文详细介绍了如何利用Microsoft Access批量导入307种土壤数据到SWAT模型,显著提升数据录入效率。通过解析usersoil表结构、提供Access操作指南和VBA自动化脚本,帮助环境工程师避免手动输入错误,实现高效数据管理。文章还包含性能优化技巧和常见错误解决方案,是SWAT模型用户的实用指南。

weixin_28366053的博客 324

文件流转换为string(二进制转换为字符串)

有个想法, 想将任意文件 保存为文本里的内容,就好像资源文件里保存图片那样。经过简单测试,基本完成了。如果发现有什么bug,希望能告诉我,好让我改进。private const int BufferSize = 1024 * 8;        ///         /// 将流转换成字符串    ///         /// 文件留        /// 流的字符形式        

Oo小白 1万+

2025软考信息安全工程师真题

2025信息安全工程师软考真题

qq_40424393的博客 1707

将二进制数据转换为字符串显示

在实际编程中,我们经常需要将接受的16进制数据转化为字符串的形式输出,例如:    16进制数据:  01 C1 00 48 00 00 00 00 00 00 00 00 00 00 00 00 00 43 00    转化为字符串:01C10048000000000000000000000000004300    具体实现如下: int charToString(char *src,c

u011430213的专栏 4671

常见的AXI总线仲裁器概述-AXI协议理解(一)

SoC 设计广泛采用共享总线式的片上通信,其中的仲裁器是共享总线的关键技术之一。AMBA AXI 总线协议以高性能、高频率的系统设计为目标,适合高带宽、低延迟的系统设计,可以达到高频率的操作而不需要复杂的总线桥,满足众多部件的接口要求,具备高度灵活的互联结构,并且向后兼容 AHB 和 APB 接口。

Paul 安的博客 1万+

sentinel滑动时间窗口算法学习

滑动时间窗口 先不说sentinel的算法实现,先说什么是滑动时间窗口, 我们在进行限流的时候,比如通过QPS进行限流,那假如我们以秒为单位,举个例子: 我设置了限流规则,qps是10 如果不使用滑动窗口算法,在统计qps的时候,就有可能会有问题,比如: 在0 - 500ms中的请求数是0,但是在500ms - 1000 ms的请求数是10;在1000ms - 1500ms 之间又进来了5个请求,此时只判断了1000ms - 2000 ms之间的请求数 因为没有把1S进行拆分多个窗口,所以在1000ms之后

小小少年的博客 3979

二进制数转字符串

二进制数转字符串。给定一个介于0和1之间的实数(如0.72),类型为double,打印它的二进制表达式。如果该数字无法精确地用32位以内的二进制表示,则打印“ERROR”。 输入:0.625 输出:"0.101" 输入:0.1 输出:"ERROR" 提示:0.1无法被二进制准确表示 ...

Rui__Wang的博客 3002

避坑指南:将大华官方Java SDK无缝迁移到SpringBoot 2.x项目的完整流程

本文详细介绍了如何将大华官方Java SDK无缝迁移到SpringBoot 2.x项目,重点解决内存管理、连接池设计和异步处理等核心问题。通过设备连接池化、异步非阻塞接口改造和内存管理优化,实现刷卡、刷脸等认证功能的高效整合,提升Web服务的稳定性和性能。

weixin_42557830的博客 416

二进制数据转字符

二进制数据转字符

liuyuedechuchu的博客 3441

从 SOAUTH2 到系统用户,SAP AS ABAP 里配置 OAuth 2.0 Client 的完整落地思路

SAP OAuth 2.0客户端配置的核心在于建立系统级信任关系。在AS ABAP中,每个OAuth 2.0客户端必须关联一个System类型的用户账号(通过SU01创建),并建议采用业务语义明确的命名规范(如ZBTP_PO_APPROVAL_APP)。关键配置包括:客户端认证方式(推荐SSL证书而非共享密钥)、Token生命周期(默认3600秒)、Scope访问范围,以及根据应用场景选择Authorization Code或SAML 2.0 Bearer等授权模式。项目实践中应避免混合配置不同授权类型,而

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 986

OpenClaw实战三|电商自动化AI工具:自动上下架+智能客服+订单统计,小店运营效率直接翻3倍

对电商小团队、夫妻店、个人商家来说,最缺的不是流量,而是省时间的工具。OpenClaw这套电商自动化AI工具,不用懂代码、不用买昂贵的SaaS软件,一台服务器、简单配置,就能把最耗时间的工作全部交给AI。人只做最有价值的事:选品、拍图、搞流量、处理复杂售后,剩下的上下架、回复、统计,全都让AI帮你打工。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1459

二进制转字符串(中英以及各种符号混合)php

最近在开发一个在线工具站,做二进制和字符串互转功能。经过一番折腾最终效果非常赞。话不多说直接上代码 字符串转二进制 /** * 字符串转换成二进制 * @author xieye * * @param {string} $word 待转换的字符-必须是单字符 * @return {string} 二进制 */ function txtTobinary($word) { $txtarr = str_split($word);.

冯伪猿 1956

5、Visual Studio Code:强大的编码与文件管理功能

本文详细介绍了 Visual Studio Code 的强大编码与文件管理功能,涵盖代码导航、引用查找、符号重命名、实时代码分析、IntelliCode 提示、文件和文件夹操作等内容。通过功能对比、流程图和实际开发案例,展示了 VS Code 如何提升开发效率和代码质量,适用于各类编程语言和项目开发场景。

water的专栏 132

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

LeetCode 面试题 05.02. 二进制数转字符串 二进制数转字符串。给定一个介于0和1之间的实数(如0.72),类型为double,打印它的二进制表达式。如果该数字无法精确地用32位以内的二进制表示,则打印“ERROR”。

<font color="Pink">Tisfy的博客</font> 515

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

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

原题 05.02.二进制数转字符串 /* *@v7fgg *执行用时:1 ms, 在所有 Java 提交中击败了20.81%的用户 *内存消耗:36.9 MB, 在所有 Java 提交中击败了100.00%的用户 *2020年6月20日 10:16 */ class Solution { public String printBin(double num) { if(num<1&&num>0){ String ans="

zhuruihe2014的博客 363

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

力扣每日一题 面试题05.02 二进制数转字符串

本题是一个简单的模拟转二进制的题目,按照原理直接模拟即可。本题用到了python3.8中的新特性海象运算符,等价于先赋值再判断本题评论区中有大佬指出错误,希望官方重视以上,共勉。

qq_59423136的博客 267

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

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

位运算

感觉画质不如...原神的博客 426
上一篇: 【LeetCode】1247. 交换字符使得字符串相同(超级简单的算法,击败100%)
下一篇: IDEA ctrl+alt+ 快捷键无效解决
天皓Oo
博客等级 码龄5年 337粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值