国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

小李飛刀:做題第六彈!

BigNerdCoding / 3212人閱讀

摘要:給定的字符串只含有小寫英文字母,并且長(zhǎng)度不超過。其他這題了,要重做看了其他的人的題解,使用的是無限逼近中位值的辦法,理論基礎(chǔ)應(yīng)該是泰勒公式。萬萬沒想到居然用到了泰勒公式手工執(zhí)行了下算法,反而理解的更快,但是泰勒公式還得再?gòu)?fù)習(xí)下。

寫在前面的話

今天持續(xù)做題ing,python有意思~
今天的題有點(diǎn)虐心...興許是我太笨了...
會(huì)努力學(xué)習(xí)的!
動(dòng)態(tài)規(guī)劃我來啦~

開始做題
第一題

459. 重復(fù)的子字符串
難度:簡(jiǎn)單
給定一個(gè)非空的字符串,判斷它是否可以由它的一個(gè)子串重復(fù)多次構(gòu)成。給定的字符串只含有小寫英文字母,并且長(zhǎng)度不超過10000。
我的題解:

class Solution(object):
    def repeatedSubstringPattern(self, s):
        """
        :type s: str
        :rtype: bool
        """
        if len(s) <= 1 : return False
        res = []
        n = 0
        length = len(s)
        for i in range(1,length):
            if s[i] == s[0]:
                res.append(i)
        for i in range(1,length):
            a = s[:i]
            length_a = len(a)
            n = length/length_a
            if a * n == s:
                return True
        return False

我的思路:
參考了小佳揚(yáng)的思路后,重新寫了一遍。
主要是因?yàn)槿绻嬖谥貜?fù)的話,

第一個(gè)字母開始就會(huì)形成重復(fù)

最小字符串的長(zhǎng)度可以被字符串長(zhǎng)度給整除

那么就記錄下第一個(gè)字母每次出現(xiàn)的地方,檢查每次字符出現(xiàn)的前一段字符串是否可以形成重復(fù)。
其他:
寫的時(shí)候遇到一個(gè)坑,一直遇到報(bào)錯(cuò)
integer division or modulo by zero
檢查了一圈發(fā)現(xiàn),是在第二個(gè)循環(huán)的時(shí)候,i從0開始作為除數(shù),所以產(chǎn)生了報(bào)錯(cuò)。

第二題

5. 最長(zhǎng)回文子串 ----超時(shí)需要再解答
難度:中等
給定一個(gè)字符串s,找到s中最長(zhǎng)的回文子串。你可以假設(shè)s的最大長(zhǎng)度為 1000。
我的題解:

class Solution(object):
    def longestPalindrome(self, s):
        """
        :type s: str
        :rtype: str
        """
        l = len(s)
        if len(s) <= 1:
            return s
        length = 0
        for i in range(0,l):
            for j in range(i+1,l+1):
                res = s[i:j]
                if res == res[::-1]: #逆向相等
                    if (len(res) > length):
                        mark = res #存儲(chǔ)數(shù)據(jù)
                        length = len(res)
        return mark 

我的思路:
用的是最暴力的解法,雙重循環(huán),逐個(gè)字段進(jìn)行比較,復(fù)雜度應(yīng)該是O(N2)
(這個(gè)復(fù)雜度超時(shí)很必然啊,被pia飛....
其他:
這題超時(shí)了,要重做!!!!
可以執(zhí)行通過較短的字符串,但是超過一定長(zhǎng)度之后就會(huì)超時(shí)。
建議使用動(dòng)態(tài)規(guī)劃,好好學(xué)習(xí)!!!重新做一次。

第三題

69. x 的平方根 ----超出內(nèi)存需要再解答
難度:簡(jiǎn)單
實(shí)現(xiàn)int sqrt(int x)函數(shù)。
計(jì)算并返回x的平方根,其中x是非負(fù)整數(shù)。
由于返回類型是整數(shù),結(jié)果只保留整數(shù)的部分,小數(shù)部分將被舍去。
我的題解:

class Solution(object):
    def mySqrt(self, x):
        """
        :type x: int
        :rtype: int
        """
        for i in range(x):
            if i**2 <= x and (i+1)**2 >x:
                return i

我的思路:
因?yàn)橹蝗≌麛?shù)部分,所以值會(huì)介于i的平方及i+1的平方之間。
其他:
這題Memory Error了,要重做!!!!
看了其他的人的題解,使用的是無限逼近中位值的辦法,理論基礎(chǔ)應(yīng)該是泰勒公式
(萬萬沒想到居然用到了泰勒公式....
手工執(zhí)行了下算法,反而理解的更快,但是泰勒公式還得再?gòu)?fù)習(xí)下。

總結(jié)

今天的做題就到這里啦,還有很多要學(xué)習(xí)的地方~
數(shù)據(jù)結(jié)構(gòu)與算法要加油呀!

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/43301.html

相關(guān)文章

  • 小李飛刀題第十彈!

    摘要:第二題漢明距離難度簡(jiǎn)單兩個(gè)整數(shù)之間的漢明距離指的是這兩個(gè)數(shù)字對(duì)應(yīng)二進(jìn)制位不同的位置的數(shù)目。給出兩個(gè)整數(shù)和,計(jì)算它們之間的漢明距離。第三題買賣股票的最佳時(shí)機(jī)難度簡(jiǎn)單給定一個(gè)數(shù)組,它的第個(gè)元素是一支給定股票第天的價(jià)格。 寫在前面 這幾天斷斷續(xù)續(xù)做了題目,也在慢慢體會(huì)一些數(shù)據(jù)思維。終于不用邊做視頻邊寫題目啦~開心~把這幾天的題解發(fā)一下~ 認(rèn)真做題的分割線 第一題 977. 有序數(shù)組的平方難度...

    bingo 評(píng)論0 收藏0
  • 小李飛刀題第七彈!

    摘要:給定一個(gè)大小為的數(shù)組,找到其中的眾數(shù)。第五題合并兩個(gè)有序數(shù)組難度簡(jiǎn)單給定兩個(gè)有序整數(shù)數(shù)組和,將合并到中,使得成為一個(gè)有序數(shù)組。說明初始化和的元素?cái)?shù)量分別為和。第六題二叉樹的最大深度難度簡(jiǎn)單給定一個(gè)二叉樹,找出其最大深度。 寫在前面的話 做做做題,慢慢上手了就覺得刷題速度變快了,果然還是有點(diǎn)笨~希望最后一竅快點(diǎn)通吧~ 開始做題 第一題 169. 求眾數(shù)難度:簡(jiǎn)單給定一個(gè)大小為 n 的數(shù)組...

    AlphaWatch 評(píng)論0 收藏0
  • 小李飛刀題第十二彈!

    摘要:寫在前面今天沒有叨逼叨但是又一次錯(cuò)過了競(jìng)賽愛睡覺的小李下周要上班,下下周一定要參加了握拳認(rèn)真做題的分割線第一題兩地調(diào)度公司計(jì)劃面試人。第人飛往市的費(fèi)用為,飛往市的費(fèi)用為。示例輸入輸出解釋第一個(gè)人去市,費(fèi)用為。 寫在前面 今天沒有叨逼叨...但是又一次錯(cuò)過了競(jìng)賽...愛睡覺的小李...下周要上班,下下周一定要參加了(握拳 認(rèn)真做題的分割線 第一題 1029. 兩地調(diào)度公司計(jì)劃面試2N人。...

    yagami 評(píng)論0 收藏0
  • 小李飛刀題第八彈!

    摘要:認(rèn)真做題的分割線第一題乘積最大子序列難度中等給定一個(gè)整數(shù)數(shù)組,找出一個(gè)序列中乘積最大的連續(xù)子序列該序列至少包含一個(gè)數(shù)。 寫在前面的話 慢慢轉(zhuǎn)變思路,不再死磕不會(huì)做的題,思路可以先借鑒,但是一定要吃透透。上周末看完看完了《算法圖解》,感覺對(duì)一些題目的思路有比較大的幫助,但是還是要在實(shí)踐中理解。 認(rèn)真做題的分割線 第一題 152. 乘積最大子序列難度:中等給定一個(gè)整數(shù)數(shù)組nums,找出一個(gè)...

    ztyzz 評(píng)論0 收藏0
  • 小李飛刀題第九彈!

    摘要:不過可能還沒有抓到動(dòng)態(tài)規(guī)劃的真諦,總覺得哪里需要再校正下思路。這題也是動(dòng)態(tài)規(guī)劃的題目,目標(biāo)總是要分解為子問題。總結(jié)看算法圖解的時(shí)候,涉及動(dòng)態(tài)規(guī)劃的小結(jié)中有這樣的每種動(dòng)態(tài)規(guī)劃解決方案都涉及網(wǎng)格。 寫在前面的話 感覺做題越多遇到的寫法越多,有種躍躍欲試的感覺~ 認(rèn)真做題 第一題 70. 爬樓梯難度:簡(jiǎn)單假設(shè)你正在爬樓梯。需要 n 階你才能到達(dá)樓頂。每次你可以爬 1 或 2 個(gè)臺(tái)階。你有多少...

    Bamboy 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<