我正在为我的项目使用八度音,因为我无法获得matlab许可证,但是我遇到了一个重要的障碍,那就是缺少关联数组数据结构。
我的问题是:
我有一些包含矩阵的单元格数据,每个单元阵列代表一个问题的潜在解决方案。我还有一个浮点数,表示该解决方案的评估性能,我希望将其放入以浮点分数为关键字的类似地图的数据结构中,以便按解决方案的性能对解决方案进行排序。
任何人都可以建议一个解决这个问题的简单方法吗?
我到目前为止所做的考虑是将每个元素作为双元素单元格数组的一部分,将评估得分作为第一个元素,将数据作为第二个元素,然后将这些数组放入另一个单元格数组中,然后应用一些排序算法,按数组排序{i} {1} ..但这似乎是一个非常笨重的解决方案。
octave在这方面有任何我不知道的功能吗?或者是我笨重的解决方案是实现这一目标的唯一途径吗?
任何帮助将不胜感激 感谢
答案 0 :(得分:2)
如何保持单元格数组不变,但创建一个矩阵,其中列是评估分数和单元格数组的索引。然后,您可以轻松地在评估分数列上使用sortrows并使用索引从单元格数组中提取解决方案。我认为这应该是一个简单的解决方案,其好处是不会重新排列您可能的大量数据。