【发布时间】:2017-03-17 18:36:17
【问题描述】:
编写一个 c++ 应用程序来存储和显示一组记录(记录的数量可能是 5000 的大小)。
需要根据记录中的某些属性对记录进行搜索。我们将这些属性称为分类。
有 7 个这样的分类,每个分类可能有不同的可能唯一值,这些值可以从所有可用记录中填充。通过在该分类的所有记录中创建一组所有唯一值,这成为可能。
用户可以从这些分类中选择多个值,并根据所有分类中的选择,搜索记录。
现在的问题=>
假设用户从分类 1 中选择了一个值,那么对于这个值,可能只有一些匹配的记录。所以这意味着应该可以只显示与当前选择匹配的其他分类中的有效值。如何根据当前选择从其他分类中过滤掉无效值。
例如:假设有 3 条记录,每条记录有 3 列。可在所有三列上搜索。
Record1=> T1, E1, S1
Record2=> T2, E2, S2
Record3=> T3, E1, S2
所以每个分类的可能值是,
Classification1=> T1, T2, T3
Classification2=> E1, E2, E3
Classification3=> S1, S2, S3
现在假设用户从分类 1 中选择 T1/T2 并从分类 2 中选择 E1 进行搜索。这意味着对于分类 3,仅显示 S1 就足够了。
有效处理这种情况的正确数据结构是什么。
【问题讨论】:
标签: c++ data-structures