js演算法 計算右側小於當前元素的個數

2021-10-25 09:54:34 字數 703 閱讀 9525

給定乙個整數陣列 nums ,按要求返回乙個新陣列 counts 。陣列 counts 有該性質: counts[i]

的值是 nums[i] 右側小於 nums[i] 的元素的數量。

輸入: [5,2,6,1] 1

輸出: [2,1,1,0] 2

解釋: 3

5 的右側有 2 個更小的元素 (2 和 1). 4

2 的右側僅有 1 個更小的元素 (1). 5

6 的右側有 1 個更小的元素 (1). 6

1 的右側有 0 個更小的元素.

暴力法很簡單,遍歷每個元素 x,並遍歷查詢在其後邊並且比它小的元素,進行累加,最後將統計出來的個數 push 到新開闢的陣列中。

function

getsmallcount

(arr)

} newarr.

push

(nums);}

return newarr

}

首先將陣列元素進行從小到大的排序,排序完成後,遍歷原陣列,找出原陣列中當前元素在排序後的陣列中的陣列下標,即為該元素右側比它小的個數,然後將排序後的陣列中的這個元素刪除。

function

getsmallcount

(arr)

)return result;

}

計算右側小於當前元素個數

給定乙個整數陣列 nums,按要求返回乙個新陣列 counts。陣列 counts 有該性質 counts i 的值是 nums i 右側小於 nums i 的元素的數量。示例 輸入 5,2,6,1 輸出 2,1,1,0 解釋 5 的右側有 2 個更小的元素 2 和 1 2 的右側僅有 1 個更小的...

315 計算右側小於當前元素的個數

給定乙個整數陣列 nums,按要求返回乙個新陣列 counts。陣列 counts 有該性質 counts i 的值是nums i 右側小於nums i 的元素的數量。示例 輸入 5,2,6,1 輸出 2,1,1,0 解釋 5 的右側有2個更小的元素 2 和 1 2 的右側僅有1個更小的元素 1 6...

LeetCode 計算右側小於當前元素的個數

給定乙個整數陣列 nums,按要求返回乙個新陣列 counts。陣列 counts 有該性質 counts i 的值是 nums i 右側小於 nums i 的元素的數量。示例 輸入 5,2,6,1 輸出 2,1,1,0 解釋 5 的右側有 2 個更小的元素 2 和 1 2 的右側僅有 1 個更小的...