使用什么数据结构/数据持久性

Dav*_*ave 6 arrays persistence data-structures

我有一个应用程序,我需要一个信息表与以下字段:

field 1 - int或char
field 2 - string(max 10 char)
field 3 - string(max 20 char)
field 4 - float

我需要程序根据分段控件过滤字段1,并从选择器中选择字段2.根据这些数据,我需要查找字段4以用于计算.总记录大约是200.我从来没有看到它超过400 - 500.我将使用我能够编码的单例,我只需要帮助这个数据持久性的结构.

我应该使用什么类型的数据结构?我应该使用NSNumber,NSString等,还是旧的数据类型,如float,Char等?我想到了一个结构放入数组,但可能有更好的方法.这对我来说是新的,所以对示例的任何帮助或参考都会很棒.我还想过一个plist或字典,但看起来它只是一个查找和一个显然不起作用的字段.核心数据对我来说太过分了.另外,关于我如何获得初始数据的任何建议?我希望用户能够编辑并添加到数据库.

Pol*_*878 0

我认为结构可以很好地满足您想要做的事情。我假设对于任何特定记录字段 1-4 都属于同一记录。在这种情况下,您可以使用结构体来表示记录。

现在,您似乎无法弄清楚如何有效地索引这些记录。我建议将记录本身存储在 alist或中vector。实际上,如果您认为要进行大量删除操作,那么 alist可能是最好的选择。这样你可以直接索引到你想要删除的元素,然后在常数时间内删除。然后,您可以使用几个不同的数据结构为list或中的元素创建索引。vector您可以使用 amap或数组直接基于整数索引字段 1 进行映射。

然后,您可以使用map按字段 2 映射的 或 hashmap...,这将为您提供几种不同的记录索引方法。

请记住仅存储对您正在创建的结构的引用...这样您就不会到处复制记录。

围绕这些数据结构创建包装器单例应该不会太难。最困难的部分是确保您正确删除/插入所有内容,除此之外,尽管它应该工作得相当好。