Array:Count of Smaller Numbers After Self

You are given an integer array nums and you have to return a new counts array.
The counts array has the property where counts[i] is the number of smaller elements to the right of nums[i]

 public List<Integer> countSmaller(int[] nums) {
        Integer[] arr = new Integer[nums.length];
        ArrayList<Integer> sorted = new ArrayList<Integer>();
        for (int i = nums.length-1; i >= 0; i--) {
            int index = getIndex(sorted, nums[i]);
            arr[i] = index;
            sorted.add(index, nums[i]);
        }
        return Arrays.asList(arr);
    }
    private int getIndex(ArrayList<Integer> sorted,int target) {
        if (sorted.size()==0) {
            return 0;
        }
        int start = 0;
        int end = sorted.size()-1;
        if (sorted.get(end)<target) {
            return end+1;
        }
        if (sorted.get(start)>target) {
            return 0;
        }
        while (start<end) {
            int mid = (start+end)/2;
            if (sorted.get(mid)<target) {
                start = mid+1;
            } else {
                end = mid;
            }
        }
        return start;
    }
.```
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 背景 一年多以前我在知乎上答了有關LeetCode的問題, 分享了一些自己做題目的經(jīng)驗。 張土汪:刷leetcod...
    土汪閱讀 12,921評論 0 33
  • **2014真題Directions:Read the following text. Choose the be...
    又是夜半驚坐起閱讀 11,097評論 0 23
  • 子云:三十而立。如今年齡已奔向四十,卻仍未立。雖說事業(yè)無成,可兩鬢已有白發(fā)生,仔細照照鏡子,心理打了一個寒顫。頓感...
    悅澤yueze閱讀 774評論 0 3
  • 那時候我在墁坪的一片森林里 手持一把鋸子,一棵一棵伐樹 每伐倒一棵樹 我的脾氣就像鋸齒一樣要重新打磨一遍 有時候我...
    甘肅子溪閱讀 535評論 8 16
  • @author isai 2017/6/13 11:27:10 一、環(huán)境 官網(wǎng):https://github...
    isai_myisai閱讀 6,245評論 0 2

友情鏈接更多精彩內(nèi)容