Matlab:我想模拟3D点的散列图到3D点列表。什么是最好的方法?

时间:2011-01-18 13:51:52

标签: matlab hashmap

基本上,我想做

(.1,.2,.3) => ( (.1,.2,.2),(.1,.2,.1) )
(.2,.1,.1) => ( (.1,.1,.1) )

我将如何在matlab中实现它?

在java中,它将是Hashmap<3DPoint, ArrayList<3DPoint>>

1 个答案:

答案 0 :(得分:0)

有两种方法可以解决这个问题:

您可以创建nKeys - by-2单元格数组,例如

{[.1,.2,.3], [.1,.2,.2;.1,.2,.1];...
[.2,.1,.1], [.1,.1,.1]}

虽然使用例如单元阵列可以方便地操作。 CELLFUN,它不提供快速查找。

如果你有更新版本的Matlab,你可以使用MAP - 类。这里,数字键只能是标量,但使用NUM2STR,您可以将3D矢量转换为1-by-N字符串。但是,请确保写入“0.1”而不是“.1”,以避免混淆。