How Many Numbers Are Smaller Than the Current Number
In this lab, you will be creating a function that, given an array nums
, determines how many numbers in the array are smaller than each element. For each element nums[i]
, the function must count the number of valid j's
such that j != i
and nums[j] < nums[i]
. The final output should be an array of the same length, containing the counts of smaller numbers for each element.
You need to implement the following function:
/** * @param {number[]} nums * @return {number[]} */ var smallerNumbersThanCurrent = function(nums) { };
Examples
Here are a few examples to help you understand the problem better:
Example 1:
Input: nums = [8,1,2,2,3]
Output: [4,0,1,1,3]
Explanation:
- For nums[0]=8 there exist four smaller numbers than it (1, 2, 2, and 3).
- For nums[1]=1 there does not exist any smaller number than it.
- For nums[2]=2 there exist one smaller number than it (1).
- For nums[3]=2 there exist one smaller number than it (1).
- For nums[4]=3 there exist three smaller numbers than it (1, 2, and 2).
Example 2:
Input: nums = [6,5,4,8]
Output: [2,1,0,3]
Example 3:
Input: nums = [7,7,7,7]
Output: [0,0,0,0]
Constraints
2 <= nums.length <= 500
0 <= nums[i] <= 100
Once you are done implementing the function, make sure to export it properly. We will be importing and testing your function using the following import statement:
import smallerNumbersThanCurrent from './index.js'
Good luck, and happy coding!