数组过大的问题!(150分)

  • 主题发起人 主题发起人 aaazzzxxx
  • 开始时间 开始时间
A

aaazzzxxx

Unregistered / Unconfirmed
GUEST, unregistred user!
我用到一个3万条的一维整型数组,现在需要记录其中每两个数之间的某种状态,用
“0,1”表示即可。但是如果再开3万乘3万的二维数组放状态,开销太大,即使
用byte型数组也无法忍受。
我想到的是用3万×500的int64的二维数组,用其中的每个数存64个状态,即把每64个状态
转成二进制,再化为十进制存入数组,读时还要再转化,再判断,实在是麻烦。
那应该怎么办呢?有没有什么简单的办法?还望高人指点!谢谢!
 
能详细点吗?谢谢!
 
这个类是Delphi自带的,在Classes中定义,操作很简单:size设置长度,bits用来
存取。类似于一维数组,不过他只能存取true和false,也就是0和1。但耗费内存很
小,原理就是你上面说的,不过tbits更有效率
 
改一下project里面的东西
 
试试Tbits吧。
 
看了一下TBITS,容量(integer)应该可以满足你的要求。
 
建立索引,使用外存,部分读取可以吗?
 
多人接受答案了。
 
后退
顶部