亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java實(shí)現(xiàn)LeetCode(報(bào)數(shù))

 更新時(shí)間:2021年06月30日 10:33:41   作者:fengpojian  
這篇文章主要介紹了Java實(shí)現(xiàn)LeetCode(報(bào)數(shù)),本文通過(guò)使用java實(shí)現(xiàn)leetcode的報(bào)數(shù)題目和實(shí)現(xiàn)思路分析,需要的朋友可以參考下

題目如下:

public String countAndSay(int n) {
        if(n == 1){
            return "1";
        }
        //遞歸調(diào)用,然后對(duì)字符串處理
        String str = countAndSay(n-1) + "*";//為了str末尾的標(biāo)記,方便循環(huán)讀數(shù)
        char[] c = str.toCharArray();
        int count = 1;
        StringBuilder s = new StringBuilder();
        for(int i = 0; i < c.length - 1;i++){
            if(c[i] == c[i+1]){
                count++;//計(jì)數(shù)增加
            }else{
                //s.append(s);
                s.append("" + count + c[i]);//上面的*標(biāo)記這里方便統(tǒng)一處理
                count = 1;//初始化
            }
        }
        return s.toString();
    }

     如果只數(shù)一次,那么結(jié)果就是“1”,這是特殊情況;如果要數(shù)的次數(shù)大于1就要進(jìn)入遞歸了。對(duì)于字符串我們自然無(wú)法對(duì)其中的字符進(jìn)行操作,所以需要把String轉(zhuǎn)換成char數(shù)組。然后在for循環(huán)外面定義了一個(gè)count變量,主要作用是當(dāng)出現(xiàn)連續(xù)的字符時(shí)進(jìn)行累加,最后轉(zhuǎn)換成字符,這是最關(guān)鍵的一環(huán)。

    在做這個(gè)題目的過(guò)程中,剛開始用的是都是string,運(yùn)行時(shí)間是30ms左右。后來(lái)把for循環(huán)中的string變量換成了Stringbuffer,執(zhí)行用時(shí)驟降至8ms。這給我了很大的啟示,不能再無(wú)腦的使用String,在適當(dāng)?shù)臅r(shí)候使用合適的變量類型可以帶來(lái)很大的性能提升。

    但是在提交之后,我看到了用時(shí)1ms的范例。簡(jiǎn)直是“投機(jī)取巧”的典型......因?yàn)闇y(cè)試用例就18個(gè),所以switch cash寫了18中情況。這真的是太聰明了!??!

到此這篇關(guān)于Java實(shí)現(xiàn)LeetCode(報(bào)數(shù))的文章就介紹到這了,更多相關(guān)Java實(shí)現(xiàn)報(bào)數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java URL 獲取PHP JSON 數(shù)據(jù)

    java URL 獲取PHP JSON 數(shù)據(jù)

    這篇文章主要介紹了java URL 獲取PHP JSON 數(shù)據(jù),需要的朋友可以參考下
    2016-04-04
  • 詳解Java的MyBatis框架中動(dòng)態(tài)SQL的基本用法

    詳解Java的MyBatis框架中動(dòng)態(tài)SQL的基本用法

    這篇文章主要介紹了詳解Java的MyBatis框架中動(dòng)態(tài)SQL的基本用法,文中列出了一些常用SQL動(dòng)態(tài)語(yǔ)句進(jìn)行講解,需要的朋友可以參考下
    2016-04-04
  • Java使用新浪微博API開發(fā)微博應(yīng)用的基本方法

    Java使用新浪微博API開發(fā)微博應(yīng)用的基本方法

    這篇文章主要介紹了Java使用新浪微博API開發(fā)微博應(yīng)用的基本方法,文中還給出了一個(gè)不使用任何SDK實(shí)現(xiàn)Oauth授權(quán)并實(shí)現(xiàn)簡(jiǎn)單的發(fā)布微博功能的實(shí)現(xiàn)方法,需要的朋友可以參考下
    2015-11-11
  • Java算法之桶排序Bucket?Sort詳解

    Java算法之桶排序Bucket?Sort詳解

    這篇文章主要介紹了Java算法之桶排序Bucket?Sort詳解,桶排序(Bucket?Sort)又稱箱排序,是一種比較常用的排序算法,其算法原理是將數(shù)組分到有限數(shù)量的桶里,再對(duì)每個(gè)桶分別排好序,最后一次將每個(gè)桶中排好序的數(shù)輸出,需要的朋友可以參考下
    2023-10-10
  • Java基礎(chǔ)類Class使用指南

    Java基礎(chǔ)類Class使用指南

    關(guān)于通過(guò)類名訪問(wèn)class屬性,我朋友問(wèn)過(guò)好幾次了,一直沒(méi)明白這個(gè)東西到底是什么?對(duì)此,我參照網(wǎng)友們的博客,總結(jié)了一些小知識(shí),如發(fā)現(xiàn)錯(cuò)誤,希望糾正,謝謝
    2015-12-12
  • 基于SpringBoot和Vue3的博客平臺(tái)文章列表與分頁(yè)功能實(shí)現(xiàn)

    基于SpringBoot和Vue3的博客平臺(tái)文章列表與分頁(yè)功能實(shí)現(xiàn)

    在前面的教程中,我們已經(jīng)實(shí)現(xiàn)了基于Spring Boot和Vue3的發(fā)布、編輯、刪除文章功能。本教程將繼續(xù)引導(dǎo)您實(shí)現(xiàn)博客平臺(tái)的文章列表與分頁(yè)功能,需要的朋友可以參考閱讀
    2023-04-04
  • spring cloud gateway 限流的實(shí)現(xiàn)與原理

    spring cloud gateway 限流的實(shí)現(xiàn)與原理

    這篇文章主要介紹了spring cloud gateway 限流的實(shí)現(xiàn)與原理,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • Springboot設(shè)置文件上傳大小限制的實(shí)現(xiàn)示例

    Springboot設(shè)置文件上傳大小限制的實(shí)現(xiàn)示例

    Spring Boot工程嵌入的tomcat限制了請(qǐng)求的文件大小默認(rèn)為1MB,單次請(qǐng)求的文件的總數(shù)不能大于10Mb,本文主要介紹了Springboot設(shè)置文件上傳大小限制的實(shí)現(xiàn)示例,感興趣的可以了解一下
    2023-11-11
  • 使用FormData上傳二進(jìn)制文件、對(duì)象、對(duì)象數(shù)組方式

    使用FormData上傳二進(jìn)制文件、對(duì)象、對(duì)象數(shù)組方式

    這篇文章主要介紹了使用FormData上傳二進(jìn)制文件、對(duì)象、對(duì)象數(shù)組方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 帶你快速搞定java并發(fā)庫(kù)

    帶你快速搞定java并發(fā)庫(kù)

    本文主要介紹了java高并發(fā)寫入用戶信息到數(shù)據(jù)庫(kù)的幾種方法,具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧,希望能給你帶來(lái)幫助
    2021-07-07

最新評(píng)論