在C++中,可以使用以下方法分离数组中的奇数和偶数:
#include <iostream>
#include <vector>
std::pair<std::vector<int>, std::vector<int>> separateOddEven(const std::vector<int>& nums) {
std::vector<int> oddNums;
std::vector<int> evenNums;
for (const auto& num : nums) {
if (num % 2 == 0) {
evenNums.push_back(num);
} else {
oddNums.push_back(num);
}
}
return std::make_pair(oddNums, evenNums);
}
int main() {
std::vector<int> nums = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
auto result = separateOddEven(nums);
std::cout << "Odd numbers: ";
for (const auto& num : result.first) {
std::cout << num << " ";
}
std::cout << std::endl;
std::cout << "Even numbers: ";
for (const auto& num : result.second) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
以上代码通过遍历数组,将奇数和偶数分别存储在不同的向量中。最后在主函数中,我们可以打印出分离后的奇数和偶数数组。
该方法的时间复杂度为O(n),其中n为数组的大小。
推荐的腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云