在C++中,可以使用迭代器和算法来有效地将列表一分为二。以下是一种常见的方法:
下面是一个示例代码:
#include <iostream>
#include <list>
#include <algorithm>
int main() {
std::list<int> originalList = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
std::list<int> list1;
std::list<int> list2;
// 使用迭代器和算法将列表一分为二
std::copy_if(originalList.begin(), originalList.end(), std::back_inserter(list1), [](int num) {
return num % 2 == 0; // 将偶数添加到list1
});
std::copy_if(originalList.begin(), originalList.end(), std::back_inserter(list2), [](int num) {
return num % 2 != 0; // 将奇数添加到list2
});
// 输出分割后的列表
std::cout << "List 1: ";
for (const auto& num : list1) {
std::cout << num << " ";
}
std::cout << std::endl;
std::cout << "List 2: ";
for (const auto& num : list2) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
这个示例代码将原始列表中的偶数分割到list1中,奇数分割到list2中。你可以根据实际需求修改分割条件和操作。
对于这个问题,腾讯云没有特定的产品与之相关。
领取专属 10元无门槛券
手把手带您无忧上云