【发布时间】:2014-07-30 19:35:35
【问题描述】:
我有两个数据结构,其中包含数据。
- 一个是向量
std::vector<int> presentStudents另一个是一个 -
char数组char cAllowedStudents[256];
现在我必须比较这两个,以便检查 vector 中的每个元素与 array 以便向量中的所有元素都应该存在于数组中,否则我将返回 false 如果有一个元素在不属于数组的向量中。
我想知道最有效和最简单的解决方案。我可以将我的int vector 转换为char array,然后一一比较,但这将是一个冗长的操作。有没有更好的方法来实现这一点?
【问题讨论】:
-
集合是否已排序?
char数组的长度是多少,我们知道256的大小。 -
虽然我提供了我个人认为对您的情况最有效的答案,但我想提一件事:虽然免费提供的效率总是很好,但应该是如果这实际上只有大约 256 名学生,请在您的优先级列表的最底部。只要这个函数不在一个巨大的循环中被调用,我相信在这种情况下代码的清晰性和可维护性应该更重要。
标签: c++ arrays visual-c++ vector