在Tcl数组和字典之间转换的速度惩罚

时间:2014-10-06 14:14:13

标签: optimization tcl

我有一个大型的Tcl应用程序,它在数组上依赖 。为了加快速度,我正在考虑使用dict而不是数组重写它。由于它的大小,我想只重写计算密集度最高的部分,并在两个子系统边界的数组和字典之间进行转换,方法在{Dictionaries and arrays“一节的http://wiki.tcl.tk/5042中解释。

我是否必须考虑此转换过程中的严重速度,或实现如此相似的内部结构,以便可以快速考虑实际转换?

1 个答案:

答案 0 :(得分:1)

数组和dicts都在内部使用哈希表;它们的性能非常相似(相同的渐近大O行为,或许在实际速度方面有点不同)。但是,如果您使用紧凑整数键(即0,1,2,...),最好使用Tcl列表,这可能要快得多(它们是C下的C阵列)盖)。