摘要:題目要求英文的題目有點(diǎn)繞口,所以去網(wǎng)上找了一下題目的意思。題目的核心邏輯在于將口語(yǔ)化的數(shù)數(shù)字轉(zhuǎn)化為字符串。
題目要求
The count-and-say sequence is the sequence of integers beginning as follows: 1, 11, 21, 1211, 111221, ... 1 is read off as "one 1" or 11. 11 is read off as "two 1s" or 21. 21 is read off as "one 2, then one 1" or 1211. Given an integer n, generate the nth sequence. Note: The sequence of integers will be represented as a string.
英文的題目有點(diǎn)繞口,所以去網(wǎng)上找了一下題目的意思。
題目的核心邏輯在于將口語(yǔ)化的數(shù)數(shù)字轉(zhuǎn)化為字符串。
例如
如果一串?dāng)?shù)字是1,則是1個(gè)1,對(duì)應(yīng)的字符串為11
如果一串?dāng)?shù)字是11,則是2個(gè)1,對(duì)應(yīng)的字符串為21
如果一串?dāng)?shù)字是1211,則是1個(gè)1,接著1個(gè)2,接著2個(gè)1,對(duì)應(yīng)的字符串為111221
題目中輸入n,則方法對(duì)第n-1個(gè)數(shù)數(shù)字結(jié)果再一次進(jìn)行數(shù)數(shù)字,并返回字符串
所以輸入1對(duì)應(yīng)1,輸入2則是對(duì)前一個(gè)1進(jìn)行數(shù)數(shù)字得到11(1個(gè)1),輸入3則是對(duì)11進(jìn)行數(shù)數(shù)字得到21(2個(gè)1),并以此類推下去
可以看出來(lái),每一個(gè)n對(duì)應(yīng)的字符串是唯一的,要得到第n個(gè)結(jié)果就必須獲得第n-1個(gè)結(jié)果,直至最小值1
public String countAndSay(int n) { if(n==1){ return "1"; } StringBuilder s = new StringBuilder("1"); StringBuilder result = new StringBuilder(); for(int i = 1 ; i在這里要強(qiáng)調(diào)一下,一定要使用StringBuilder來(lái)存儲(chǔ)臨時(shí)的結(jié)果,具體原因可以去查一下String和StringBuilder的差別,以后有機(jī)會(huì)我在博客中詳細(xì)介紹一下
想要了解更多開發(fā)技術(shù),面試教程以及互聯(lián)網(wǎng)公司內(nèi)推,歡迎關(guān)注我的微信公眾號(hào)!將會(huì)不定期的發(fā)放福利哦~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/66976.html
摘要:而讀起來(lái)是兩個(gè),所以第三個(gè)字符串就應(yīng)當(dāng)是。同理第四個(gè)字符串是一個(gè)一個(gè),因此是。依次類推而我們的目的是,對(duì)于輸入的正整數(shù),我們要給出第個(gè)字符串是什么。這里采用了是為了減少內(nèi)存的開銷。解法設(shè)置初始字符串將重新賦值當(dāng)前字符字符計(jì)數(shù) 題目詳情 The count-and-say sequence is the sequence of integers with the first five t...
摘要:反轉(zhuǎn)字符法復(fù)雜度時(shí)間空間思路因?yàn)閿?shù)字不好從前向后遍歷每一位要先統(tǒng)計(jì)一共有多少位,比較麻煩,所以我們直接從后向前計(jì)數(shù),最后把結(jié)果倒置就行了。 Count Consecutive Digits in Integer Count consecutive digits and say it. For example, return 132341 if input is 1112224. The...
摘要:遞歸解法復(fù)雜度時(shí)間空間遞歸棧思路該序列又叫做外觀序列,無(wú)論如何我們都得將前一個(gè)序列元素算出來(lái),才能計(jì)算后一個(gè)序列元素。當(dāng)遞歸至的時(shí)候返回初始數(shù)字。另外,比如初始數(shù)字,第一次變成了,我們可以發(fā)現(xiàn)大于的數(shù)都只會(huì)一個(gè)一個(gè)出現(xiàn)了。 Count And Say The count-and-say sequence is the sequence of integers beginning as...
摘要:自己沒事刷的一些的題目,若有更好的解法,希望能夠一起探討項(xiàng)目地址 自己沒事刷的一些LeetCode的題目,若有更好的解法,希望能夠一起探討 Number Problem Solution Difficulty 204 Count Primes JavaScript Easy 202 Happy Number JavaScript Easy 190 Reverse Bi...
摘要:前言從開始寫相關(guān)的博客到現(xiàn)在也蠻多篇了。而且當(dāng)時(shí)也沒有按順序?qū)懍F(xiàn)在翻起來(lái)覺得蠻亂的??赡艽蠹铱粗卜浅2环奖?。所以在這里做個(gè)索引嘻嘻。順序整理更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新 前言 從開始寫leetcode相關(guān)的博客到現(xiàn)在也蠻多篇了。而且當(dāng)時(shí)也沒有按順序?qū)憽F(xiàn)在翻起來(lái)覺得蠻亂的。可能大家看著也非常不方便。所以在這里做個(gè)索引嘻嘻。 順序整理 1~50 1...
閱讀 3447·2021-10-14 09:42
閱讀 2738·2021-09-08 10:44
閱讀 1311·2021-09-02 10:18
閱讀 3620·2021-08-30 09:43
閱讀 2807·2021-07-29 13:49
閱讀 3730·2019-08-29 17:02
閱讀 1589·2019-08-29 15:09
閱讀 1041·2019-08-29 11:01