gpt4 book ai didi

c - 在 C 中减少十六进制格式以外的二进制数

转载 作者:太空宇宙 更新时间:2023-11-04 08:35:01 25 4
gpt4 key购买 nike

我正在使用一个生成数百万个二进制字符串的程序,我需要将它们保存在内存中的二叉树中,但字符串的长度为 2048 个字符 (1001011....101)。到目前为止,我已经将它们转换为十六进制格式并且可以获得 512 个字符的字符串,以实现仅存储原始字符串大小的 1/4,但它仍然太大而无法将它们全部保存在内存中。所以我想知道是否有一种方法可以减少二进制字符串,甚至可以保证每个转换后的字符串的唯一性。谢谢!

最佳答案

不要将字符串存储为字符串,而是将它们存储为原始数字。从某种意义上说,这相当于“Base-256”编码,可以这么说。当然实际上这只是一个由字节组成的大无符号整数。您可以按照通常的方式对这些数字进行比较。

当您需要打印二进制字符串时,请根据需要格式化数字。换句话说,仅当您需要将值视为具有特定基数的字符串时,才应输入特定基数。

关于c - 在 C 中减少十六进制格式以外的二进制数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26635790/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com