給你乙個陣列 nums,對於其中每個元素 nums[i],請你統計陣列中比它小的所有數字的數目。
換而言之,對於每個 nums[i] 你必須計算出有效的 j 的數量,其中 j 滿足 j != i 且 nums[j] < nums[i] 。
以陣列形式返回答案。
示例 1:
輸入:nums = [8,1,2,2,3]
輸出:[4,0,1,1,3]
解釋:對於 nums[0]=8 存在四個比它小的數字:(1,2,2 和 3)。
對於 nums[1]=1 不存在比它小的數字。
對於 nums[2]=2 存在乙個比它小的數字:(1)。
對於 nums[3]=2 存在乙個比它小的數字:(1)。
對於 nums[4]=3 存在三個比它小的數字:(1,2 和 2)。
示例 2:
輸入:nums = [6,5,4,8]
輸出:[2,1,0,3]
示例 3:
輸入:nums = [7,7,7,7]
輸出:[0,0,0,0]
答案
class
solution
//從nums[i]獲得i位的值n,根據鍵為n,從map中獲取n排序後所在的位置,又因為map按照順序存入,所以n的排序位置為小於n的個數
for(
int i=
0;i)return ans;
}}
有多少小於當前數字的數字
給你乙個陣列 nums,對於其中每個元素 nums i 請你統計陣列中比它小的所有數字的數目。換而言之,對於每個 nums i 你必須計算出有效的 j 的數量,其中 j 滿足 j i 且 nums j nums i 以陣列形式返回答案 第一次解題用的暴力解法 用時 24ms public stati...
有多少小於當前數字的數字
2 nums.length 500 0 nums i 100 方法一 暴力法 class solution return res 方法二 快速排序 我們也可以將陣列排序,並記錄每乙個數在原陣列中的位置。對於排序後的陣列中的每乙個數,我們找出其左側第乙個小於它的數,這樣就能夠知道陣列中小於該數的數量。...
1365 有多少小於當前數字的數字
題目 給你乙個陣列 nums,對於其中每個元素 nums i 請你統計陣列中比它小的所有數字的數目。換而言之,對於每個 nums i 你必須計算出有效的 j 的數量,其中 j 滿足 j i 且 nums j nums i 以陣列形式返回答案。示例 輸入 nums 8,1,2,2,3 輸出 4,0,1...