存储位置信息的最佳数据结构是什么?

时间:2011-06-28 13:14:36

标签: objective-c data-structures location

我正在构建一个简单的应用程序,所有工作都是从每个hout的CLLocation存储'location'。我对目标C很新,只是想知道哪个结构对于这个目的是理想的。

谢谢!

3 个答案:

答案 0 :(得分:1)

当然,对于2D坐标CLLocationCoordinate2D,或者如果你想要高度也可以使用它:

typedef struct {
  CLLocationCoordinate2D ground,
  double altitude;
} CLLocationCoordinate2DWithAltitude;

答案 1 :(得分:1)

这取决于你与此有什么关系:

  • 如果你必须订购它们(例如,通过时间戳),数组是好的
  • 如果你必须使用某种键来检索它们,那么字典就是好的
  • 如果你只需要收集它们,那么一套就更好了(想想NSSet

请注意,NSArrayNSDictionaryNSSet仅存储对象。

答案 2 :(得分:0)

有这些位置有什么意义吗?你打算用它们实现任何特定的算法吗?

如果我所做的只是存储任意位置,我可能会用“位置”对象包装它们,然后将位置对象存储在链接列表或数组中。

如果您要尝试将位置解析为逻辑地址,那么您可能希望将它们存储在邻接矩阵或列表(二维数组)中,以便您可以对它们执行图形操作(例如最短路径算法)

链接列表实现可在此处找到:http://www.cocoadev.com/index.pl?LinkedList

这不是数组,它是一种更高级的数据结构。它非常常用,因为数据结构的大小没有限制。