Every day a Leetcode
题目来源:3069. 将元素分配到两个数组中 I
解法1:模拟
简单地按题意模拟。
代码:
/** @lc app=leetcode.cn id=3069 lang=cpp** [3069] 将元素分配到两个数组中 I*/// @lc code=start
class Solution
{
public:vector<int> resultArray(vector<int> &nums){vector<int> arr1, arr2;arr1.push_back(nums[0]);arr2.push_back(nums[1]);for (int i = 2; i < nums.size(); i++){if (arr1.back() > arr2.back())arr1.push_back(nums[i]);elsearr2.push_back(nums[i]);}vector<int> result(arr1.begin(), arr1.end());for (int &x : arr2)result.push_back(x);return result;}
};
// @lc code=end
结果:
复杂度分析:
时间复杂度:O(n),其中 n 是数组 nums 的元素个数。
空间复杂度:O(n),其中 n 是数组 nums 的元素个数。