矩阵 - 记忆

时间:2013-08-20 18:24:44

标签: arrays memory matrix byte

假设我有一个矩阵A=[];

我想知道是否有任何方法可以表示只有填充的块必须占用内存并且必须保留的内存,例如:

A = 1 0 0
    0 1 0
    0 0 1

现在,每个块都需要1位内存来存储矩阵, 因此我想知道是否可以将矩阵存储为:

 A = 1   
       1
         1

并且空格不能占用任何内存。是否有任何文件格式以这种方式表示矩阵?

2 个答案:

答案 0 :(得分:1)

没有。你在处理比特。存储“填充”位列表需要更多内存,而不是简单地存储位。例如对于一个简单的1x8矩阵:

     0 1 2 3 4 5 6 7   <---bit-wise addresses
m = [0,1,0,0,0,1,1,1] 

可以存储为单个字节的存储器,存储比率为每比特1比特。

仅存储SET位的位置将需要4个字节。如果设置了所有位,则需要8个字节来存储这些位置。所以现在你已经从一个恒定的1字节要求变为一个变量0 - > 8个字节。

答案 1 :(得分:0)

您可以开发一种方法,您可以存储有关List中位置的信息,但至少会消耗更多内存,因为您将以这种方式获胜。所以至少没有。