gpt4 book ai didi

c - boolean 值的轻量级矩阵

转载 作者:行者123 更新时间:2023-12-03 17:10:21 24 4
gpt4 key购买 nike

我需要实现一个非常大的矩阵,比如标准C中的NxN。矩阵必须存储一个真值表,即

matrix[i][j] = [true|false]

我知道我可以简单地使用 int 矩阵,或者如果使用 C99 则使用 boolean 类型,但我正在寻找内存方面最轻量级的解决方案。

最佳答案

就内存而言,最轻量级的解决方案是在一个字符中保存八个 boolean 值:

unsigned char getBit(char byte, unsigned short bit){
assert(bit < 8);
return byte&(1<<bit);
}

然后您可以通过保存每一行中的字节来存储一个N x 8M 矩阵。如果这些字节中有许多是空的,那么您应该使用稀疏矩阵格式,例如压缩备用行。

关于c - boolean 值的轻量级矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9281811/

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