欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

go語言題解LeetCode506相對名次示例詳解

 更新時間:2022年12月30日 10:05:50   作者:劉09k11  
這篇文章主要為大家介紹了go語言題解LeetCode506相對名次示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

一 描述

506. 相對名次

給你一個長度為 n 的整數(shù)數(shù)組 score ,其中 score[i] 是第 i 位運動員在比賽中的得分。所有得分都 互不相同

運動員將根據(jù)得分 決定名次 ,其中名次第 1 的運動員得分最高,名次第 2 的運動員得分第 2 高,依此類推。運動員的名次決定了他們的獲獎情況:

  • 名次第 1 的運動員獲金牌 "Gold Medal" 。
  • 名次第 2 的運動員獲銀牌 "Silver Medal" 。
  • 名次第 3 的運動員獲銅牌 "Bronze Medal" 。
  • 從名次第 4 到第 n 的運動員,只能獲得他們的名次編號(即,名次第 x 的運動員獲得編號 "x")。

使用長度為 n 的數(shù)組 answer 返回獲獎,其中 answer[i] 是第 i 位運動員的獲獎情況。

示例 1:

輸入:score = [5,4,3,2,1]
輸出:["Gold Medal","Silver Medal","Bronze Medal","4","5"]
解釋:名次為 [1st, 2nd, 3rd, 4th, 5th] 。

示例 2:

輸入:score = [10,3,8,9,4]
輸出:["Gold Medal","5","Bronze Medal","Silver Medal","4"]
解釋:名次為 [1st, 5th, 3rd, 2nd, 4th] 。

提示:

n == score.length

1 <= n <= 10^4

0 <= score[i] <= 10^6

score 中的所有值 互不相同

二 分析

本題以map映射求解,首先把所有的字符串分別添加到指定map集合中去,并依次給予對應(yīng)的索引,隨后對字符串?dāng)?shù)組進行從大到小排序,并依次從map集合中由鍵找值,并把該值給到提前創(chuàng)建的字符串?dāng)?shù)組中作為索引,從大到小依次賦予“Gold Medal”、“Silver Medal”、“Bronze Medal”以及3、4、5...

三 答案

class Solution {
    public String[] findRelativeRanks(int[] nums) {
        if(nums.length==1) {
            return new String[]{"Gold Medal"};
        }
        String[] arr = new String[nums.length];
        Map<Integer,Integer> map = new HashMap<Integer,Integer>();
        int count = 0;
        for(int i = 0,j=0;i<nums.length && j<nums.length;i++,j++) {
            map.put(nums[i],j);
        }
        Arrays.sort(nums);
        for(int i = 0;i<nums.length/2;i++) {
            int temp = nums[nums.length-i-1];
            nums[nums.length-i-1] = nums[i];
            nums[i] = temp;
        }
        if(nums.length==2) {
            arr[map.get(nums[0])] = "Gold Medal";
            arr[map.get(nums[1])] = "Silver Medal";
            return arr;
        }
        arr[map.get(nums[0])] = "Gold Medal";
        arr[map.get(nums[1])] = "Silver Medal";
        arr[map.get(nums[2])] = "Bronze Medal";
        for(int i = 3;i<nums.length;i++) {
            arr[map.get(nums[i])] = i+1+"";
        }
        return arr;
    }
}

以上就是go語言題解LeetCode506相對名次示例詳解的詳細內(nèi)容,更多關(guān)于go語言題解相對名次的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • GO web 數(shù)據(jù)庫預(yù)處理的實現(xiàn)

    GO web 數(shù)據(jù)庫預(yù)處理的實現(xiàn)

    本文主要介紹了GO web 數(shù)據(jù)庫預(yù)處理的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • 深入了解Golang官方container/heap用法

    深入了解Golang官方container/heap用法

    在?Golang?的標準庫?container?中,包含了幾種常見的數(shù)據(jù)結(jié)構(gòu)的實現(xiàn),其實是非常好的學(xué)習(xí)材料。今天我們就來看看?container/heap?的源碼,了解一下官方的同學(xué)是怎么設(shè)計,我們作為開發(fā)者又該如何使用
    2022-10-10
  • Go中過濾范型集合性能示例詳解

    Go中過濾范型集合性能示例詳解

    這篇文章主要為大家介紹了Go中過濾范型集合性能示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • Go語言獲取本機邏輯CPU數(shù)量的方法

    Go語言獲取本機邏輯CPU數(shù)量的方法

    這篇文章主要介紹了Go語言獲取本機邏輯CPU數(shù)量的方法,實例分析了runtime庫的操作技巧,需要的朋友可以參考下
    2015-03-03
  • MacOS中 VSCode 安裝 GO 插件失敗問題的快速解決方法

    MacOS中 VSCode 安裝 GO 插件失敗問題的快速解決方法

    這篇文章主要介紹了MacOS中 VSCode 安裝 GO 插件失敗問題的快速解決方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • golang中new與make的區(qū)別講解

    golang中new與make的區(qū)別講解

    new只能開辟單個空間,不能為引用類型開辟多個空間,并且new是對類型進行內(nèi)存的開辟,返回一個指向該內(nèi)存空間的指針類型,如果使用new去初始化引用數(shù)據(jù)類型,不是很合適(當(dāng)然,new一個對象還是可以的),因此就需要用到另一個內(nèi)置函數(shù)make,需要的朋友可以參考下
    2023-01-01
  • golang對etcd存取和數(shù)值監(jiān)測的實現(xiàn)

    golang對etcd存取和數(shù)值監(jiān)測的實現(xiàn)

    這篇文章主要介紹了golang對etcd存取和數(shù)值監(jiān)測的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • VSCode Golang dlv調(diào)試數(shù)據(jù)截斷問題及處理方法

    VSCode Golang dlv調(diào)試數(shù)據(jù)截斷問題及處理方法

    這篇文章主要介紹了VSCode Golang dlv調(diào)試數(shù)據(jù)截斷問題,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • golang?中?channel?的詳細使用、使用注意事項及死鎖問題解析

    golang?中?channel?的詳細使用、使用注意事項及死鎖問題解析

    這篇文章主要介紹了golang?中?channel?的詳細使用、使用注意事項及死鎖分析,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • golang模擬實現(xiàn)帶超時的信號量示例代碼

    golang模擬實現(xiàn)帶超時的信號量示例代碼

    這篇文章主要給大家介紹了關(guān)于golang模擬實現(xiàn)帶超時的信號量的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-09-09

最新評論