成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

179. Largest Number

AlphaGooo / 873人閱讀

摘要:后來轉念一想,直接比較兩個數(shù)拼成的結果不就好了,長度一樣,所以省去了很多麻煩。程序如下直接暴力地把兩個數(shù)合成一個看哪個結果大,然后按大的結果的順序輸出,省很多比較因為第一個數(shù)為最大數(shù),如果最大數(shù)為那么結果必然為

這道題開始想容易陷入一個誤區(qū):我要怎么比較這兩個多帶帶的數(shù),使得它們拼起來的結果最大呢?然而如果真的仔細比較這兩個數(shù)最后得出一個結論,代碼會很長,樓主已經(jīng)試過了。。。后來轉念一想,直接比較兩個數(shù)拼成的結果不就好了,長度一樣,所以省去了很多麻煩。程序如下:

public String largestNumber(int[] nums) {
        //直接暴力地把兩個數(shù)合成一個String看哪個結果大,然后按大的結果的順序輸出,省很多比較
        PriorityQueue pq = new PriorityQueue(nums.length, new Comparator() {
            public int compare(String s1, String s2) {
                String str1 = s1 + s2;
                String str2 = s2 + s1;
                return str2.compareTo(str1);
            }
        });
        
        for (int i = 0; i < nums.length; i++) {
            pq.add(Integer.toString(nums[i]));
        }
        
        StringBuilder sb = new StringBuilder();
        while (!pq.isEmpty()) {
            sb.append(pq.poll());
        }
        //因為第一個數(shù)為最大數(shù),如果最大數(shù)為0, 那么結果必然為0
        if (sb.charAt(0) == "0") {
            return "0";
        }
        
        return sb.toString();
    }

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/64842.html

相關文章

  • leetcode部分題目答案之JavaScript版

    摘要:自己沒事刷的一些的題目,若有更好的解法,希望能夠一起探討項目地址 自己沒事刷的一些LeetCode的題目,若有更好的解法,希望能夠一起探討 Number Problem Solution Difficulty 204 Count Primes JavaScript Easy 202 Happy Number JavaScript Easy 190 Reverse Bi...

    alphahans 評論0 收藏0
  • [Leetcode] Largest Number 最大整數(shù)

    摘要:拼接比較法復雜度時間空間思路要拼成最大數(shù),我們只要讓較大的數(shù)排在前面,較小的數(shù)排在后面就行。注意如果排序后第一個數(shù)是,則直接返回,因為后面的數(shù)只有可能是了。 Largest Number Given a list of non negative integers, arrange them such that they form the largest number. For exa...

    wuyumin 評論0 收藏0
  • 【5 kyu】Largest 5 digit number in a series

    摘要:原題目題目找出一個數(shù)值該數(shù)值將以字符串的形式傳入中最大的五位數(shù)。如果數(shù)字的位數(shù)小于,則直接返回該數(shù)值如果數(shù)字的位數(shù)不小于六位,則依次截取連續(xù)的位數(shù),求取最大值對比中使用了遞歸。 原題目 In the following 6 digit number:28391091 is the greatest sequence of 2 digits. In the following 10 di...

    impig33 評論0 收藏0
  • [LintCode/LeetCode] Largest Number [Comparator的使用]

    摘要:先將轉化為,否則無法使用,其實轉為也可以,這里用為例。然后就是最關鍵的一步創(chuàng)造一個,用以從大到小排列所有的元素。注意這里的順序不能變。再將排列好的元素放入一個里,然后將轉化為。 Problem Given a list of non negative integers, arrange them such that they form the largest number. Examp...

    xietao3 評論0 收藏0
  • [LintCode] Top k Largest Numbers II

    Problem Implement a data structure, provide two interfaces: add(number). Add a new number in the data structure.topk(). Return the top k largest numbers in this data structure. k is given when we crea...

    jindong 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<