建设部网站监理公告,村级网站模板,wordpress登陆页面修改,seo免费自助建站给你一个下标从 0 开始的整数数组 nums 和一个整数 pivot 。请你将 nums 重新排列#xff0c;使得以下条件均成立#xff1a;
所有小于 pivot 的元素都出现在所有大于 pivot 的元素 之前 。所有等于 pivot 的元素都出现在小于和大于 pivot 的元素 中间 。小于 pivot 的元素之…给你一个下标从 0 开始的整数数组 nums 和一个整数 pivot 。请你将 nums 重新排列使得以下条件均成立
所有小于 pivot 的元素都出现在所有大于 pivot 的元素 之前 。所有等于 pivot 的元素都出现在小于和大于 pivot 的元素 中间 。小于 pivot 的元素之间和大于 pivot 的元素之间的 相对顺序 不发生改变。 更正式的考虑每一对 pipj pi 是初始时位置 i 元素的新位置pj 是初始时位置 j 元素的新位置。对于小于 pivot 的元素如果 i j 且 nums[i] pivot 和 nums[j] pivot 都成立那么 pi pj 也成立。类似的对于大于 pivot 的元素如果 i j 且 nums[i] pivot 和 nums[j] pivot 都成立那么 pi pj 。
请你返回重新排列 nums 数组后的结果数组。 力扣LeetCode官网 - 全球极客挚爱的技术成长平台备战技术面试力扣提供海量技术面试资源帮助你高效提升编程技能轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/partition-array-according-to-given-pivot/description/
示例 1
输入nums [9,12,5,10,14,3,10], pivot 10
输出[9,5,3,10,10,12,14]
解释
元素 9 5 和 3 小于 pivot 所以它们在数组的最左边。
元素 12 和 14 大于 pivot 所以它们在数组的最右边。
小于 pivot 的元素的相对位置和大于 pivot 的元素的相对位置分别为 [9, 5, 3] 和 [12, 14] 它们在结果数组中的相对顺序需要保留。 class Solution
{
public:vectorint pivotArray(vectorint nums, int pivot) {vectorint resa;vectorint resb;vectorint resc;for (int x : nums){if (x pivot){resa.push_back(x);}else if (x pivot){resb.push_back(x);}else{resc.push_back(x);}}resa.insert(resa.end(), resb.begin(), resb.end());resa.insert(resa.end(), resc.begin(), resc.end());return resa;}
};