更快的替代Containers.map?

时间:2016-03-06 21:31:20

标签: matlab oop containers

此问题与:Matlab: dynamically storing objects, alternatives to containers.Map class

有关

我正在构建一个需要具有键值功能的数据结构,其中键是一个int,值是一个对象。并且还需要能够将元素添加到此键值映射中。

因此,Containers.map是一个不错的选择,但它非常慢(我已经测量了在我的Linux机器上〜450个元素的地图上的值的检索大约为0.1秒)。这真的很奇怪,因为我认为他们会将这个类实现为hashmap或类似的东西。

我需要更快的东西。我正在考虑实现一个平衡的二叉搜索树或类似的东西,但我不知道这种动态递归对象在MATLAB上是否会很快(可能不是)。

是否可以将std :: map绑定到我的应用程序或其他东西,这比Containers.map更快?

编辑,澄清和代码示例: 我在Linux上的Matlab 2015a上运行它。这是糟糕表现的再现。在这个程序中,性能并没有那么糟糕,因为在我的程序中我有一个更复杂的类层次结构,它产生了很多开销(对于映射的每个元素进行迭代的简单行为,只需检索它几乎需要1分钟时有~450个元素)。在这里,我创建了一个非常简单的图类来说明问题。 pastebin.com/TvyzJxgK

0 个答案:

没有答案