c - 节省内存,巨大的数组替代c编程

标签 c arrays memory-management

我正在使用两个数组(unsigned int),尺寸为:20000x20000。

我在数组中有很多空间距,很多零或空值。

我可以做些什么来节省内存?,因为我的内存快用完了。

我尝试读取文件中的列表,但速度非常慢。

我听说在其他语言中有 vector 。

最佳答案

您正在寻找 sparse matrix , 它基本上通过将条目存储为 (index1, index2, value) 的列表来工作,并且只有非零元素的条目。

关于c - 节省内存,巨大的数组替代c编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23747735/

相关文章:

c - 消息队列 - Solaris10 - 无法打开

C++ new 分配比预期更多的空间

c - 使用原子和 futexes 锁定代码时无法找到竞争条件

c - 将从 C# 接收到的文件 byte[] 数组写入 C dll 中的文件

c - unsigned char 140, unicode 0x0152 = 338 的代码页或编码是什么?

ios - 尝试用 replaceOccurrencesOfString :withString:options:range: 改变不可变对象(immutable对象)

PHPStorm - 使用数组进行类型提示

python - 将数组的 numpy 数组转换为 2D numpy 数组

c - 获取包含动态分配内存的结构的大小

c++ - C++ 中带字符串键的查找表的内存管理