diff --git a/javascript/2161-partition-array-according-to-given-pivot.js b/javascript/2161-partition-array-according-to-given-pivot.js new file mode 100644 index 000000000..4df548ff7 --- /dev/null +++ b/javascript/2161-partition-array-according-to-given-pivot.js @@ -0,0 +1,29 @@ +/** + * Array + * Time O(n) | Space O(n) + * https://leetcode.com/problems/partition-array-according-to-given-pivot/ + * @param {number[]} nums + * @param {number} pivot + * @return {number[]} + */ +var pivotArray = function(nums, pivot) { + + const lessThanPivot = []; + const equalToPivot = []; + const greaterThanPivot = []; + + for (let i = 0; i < nums.length; i++) { + + if (nums[i] > pivot) { + greaterThanPivot.push(nums[i]); + } + if (nums[i] < pivot) { + lessThanPivot.push(nums[i]); + } + if (nums[i] === pivot) { + equalToPivot.push(nums[i]); + } + } + + return [...lessThanPivot, ...equalToPivot, ...greaterThanPivot]; +};