我在代码中使用哈希表,当代码运行时,我将键和值添加到哈希表中。起初,我认为使用哈希表可以让我的代码更快,但我错了,使用哈希表让它变慢了。当我搜索它时,我意识到增加哈希表的大小并编写它需要时间,因为当它变大时,MATLAB 会寻找更大的空间,而寻找更大的空间会浪费时间。
MATLAB中的哈希表是否有任何预分配方法?
谢谢。
我在代码中使用哈希表,当代码运行时,我将键和值添加到哈希表中。起初,我认为使用哈希表可以让我的代码更快,但我错了,使用哈希表让它变慢了。当我搜索它时,我意识到增加哈希表的大小并编写它需要时间,因为当它变大时,MATLAB 会寻找更大的空间,而寻找更大的空间会浪费时间。
MATLAB中的哈希表是否有任何预分配方法?
谢谢。
我假设您的意思是您使用内置containers.Map
对象作为哈希表。虽然没有直接的方法来预分配这样的对象,但我建议您使用简单的两列元胞数组或java.util.Hashtable
对象,这两种方法通常都比containers.Map
.
参考: https ://undocumentedmatlab.com/blog/using-java-collections-in-matlab