摘要:寫在前面的話好幾天木有刷題啦,今天猛刷了一把,要梳理一個順序好好的學習啦一定要好好執(zhí)行每天做題的計劃最近真的好忙碌啊,還要做視頻。第二題最大子序和難度簡單給定一個整數(shù)數(shù)組,找到一個具有最大和的連續(xù)子數(shù)組子數(shù)組最少包含一個元素,返回其最大和。
寫在前面的話
好幾天木有刷題啦,今天猛刷了一把,要梳理一個順序好好的學習啦~
一定要好好執(zhí)行每天做題的計劃!
最近真的好忙碌啊,還要做視頻。
不過呢,看了高效學習的書,感覺其實不能說太分散的學習,應該考慮多方面的聯(lián)系,形成整體性的學習,還得琢磨琢磨...
小李加油呀!
58. 最后一個單詞的長度
難度:簡單
給定一個僅包含大小寫字母和空格 " " 的字符串,返回其最后一個單詞的長度。
如果不存在最后一個單詞,請返回0。
說明:一個單詞是指由字母組成,但不包含任何空格的字符串。
我的題解:
class Solution(object): def lengthOfLastWord(self, s): """ :type s: str :rtype: int """ lastindex = 0 res = 0 for i in s: if i == " ": lastindex = 0 else: lastindex = lastindex + 1 if lastindex > 0: res = lastindex return res
方法的效率不是太高。
解題思路:
每次遇到空格的時候,單詞的長度就置空,不是的話就加1,然后用res記錄上一次的lastindex長度。
其他
這題也要再多刷一次。
53. 最大子序和
難度:簡單
給定一個整數(shù)數(shù)組 nums ,找到一個具有最大和的連續(xù)子數(shù)組(子數(shù)組最少包含一個元素),返回其最大和。
我的題解:
class Solution(object): def maxSubArray(self, nums): """ :type nums: List[int] :rtype: int """ maxSum = nums[0] sum = 0 for i in nums: sum = sum + i if sum > maxSum: maxSum = sum if sum < 0: sum = 0 return maxSum
解題思路:
這題是參考了小佳揚的思路。
重點考慮什么時候會有最大的值。
maxSum其實相當于一個記住上次最大值的點,sum則是移動的點。
當遇到會導致總和小于0的值,那一定是要排除的,因為肯定會拉低總和大小。
其他:
這次還要多考慮情況,然后再刷一次。
35. 搜索插入位置
難度:簡單
給定一個排序數(shù)組和一個目標值,在數(shù)組中找到目標值,并返回其索引。如果目標值不存在于數(shù)組中,返回它將會被按順序插入的位置。
你可以假設數(shù)組中無重復元素。
我的題解:
class Solution(object): def searchInsert(self, nums, target): """ :type nums: List[int] :type target: int :rtype: int """ length = len(nums) for i in range(length): if nums[i] == target: return i if nums[i] > target: nums.insert(i,target) return i nums.append(target) return length
解題思路:
用了insert的辦法,找到對應的Index之后插入即可。
28. 實現(xiàn)strStr()
難度:簡單
實現(xiàn) strStr() 函數(shù)。
給定一個 haystack 字符串和一個 needle 字符串,在 haystack 字符串中找出 needle 字符串出現(xiàn)的第一個位置 (從0開始)。如果不存在,則返回 -1。
我的題解:
class Solution(object): def strStr(self, haystack, needle): """ :type haystack: str :type needle: str :rtype: int """ if needle == "": return 0 length_a = len(needle) length_b = len(haystack) if length_b < length_a: return -1 for i in range(length_b): if haystack[i] == needle[0]: for j in range(length_a): if i+j == length_b: return -1 if haystack[i+j] != needle[j]: i = -1 if j == length_a-1 and i !=-1: return i i = -1 return i
解題思路:
這串代碼其實寫的有點土,還得優(yōu)化下,用的就是反復循環(huán)check,暴力破解。
文章版權歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/43308.html
摘要:刷題第三天正式刷題第三天。注意空字符串可被認為是有效字符串。錯誤的一次是因為沒有考慮空字符串,當存在為的時候,結果應該為。第二題加一難度簡單類型給定一個由整數(shù)組成的非空數(shù)組所表示的非負整數(shù),在該數(shù)的基礎上加一。 刷題第三天 正式刷題第三天。之前看了個說法,挺認可的。就是不要太在意一天的能呈現(xiàn)的價值,但是要在意累計的價值。之前很多時候我會對今天一天沒有完成的計劃而沮喪,事實上,算法的實踐...
摘要:寫在前面今天的小李的目標是排序算法,果然還是要下手寫才會更有體會,也更記得住。排序算法冒泡排序主要是比對相鄰兩個數(shù)之間的大小關系,不斷將較大值交換至最后。 寫在前面 今天的小李的目標是排序算法,果然還是要下手寫才會更有體會,也更記得住。 認真做題的分割線 第一題 215. 數(shù)組中的第K個最大元素難度:中等在未排序的數(shù)組中找到第k個最大的元素。請注意,你需要找的是數(shù)組排序后的第k個最大的...
摘要:第二題羅馬數(shù)字轉(zhuǎn)整數(shù)難度簡單羅馬數(shù)字包含以下七種字符,,,,,和。字符數(shù)值例如,羅馬數(shù)字寫做,即為兩個并列的。通常情況下,羅馬數(shù)字中小的數(shù)字在大的數(shù)字的右邊。給定一個羅馬數(shù)字,將其轉(zhuǎn)換成整數(shù)。 隨便說點啥 TIME:2019-02-01昨晚其實刷了題來著,但是沒有解出來,哭泣!但是,今天重新寫了下,解出來咯~所以今天的題量要增加咯~我會加油的! 第一題 14. 最長公共前綴難度:簡單 ...
摘要:給定一個大小為的數(shù)組,找到其中的眾數(shù)。第五題合并兩個有序數(shù)組難度簡單給定兩個有序整數(shù)數(shù)組和,將合并到中,使得成為一個有序數(shù)組。說明初始化和的元素數(shù)量分別為和。第六題二叉樹的最大深度難度簡單給定一個二叉樹,找出其最大深度。 寫在前面的話 做做做題,慢慢上手了就覺得刷題速度變快了,果然還是有點笨~希望最后一竅快點通吧~ 開始做題 第一題 169. 求眾數(shù)難度:簡單給定一個大小為 n 的數(shù)組...
摘要:第二題漢明距離難度簡單兩個整數(shù)之間的漢明距離指的是這兩個數(shù)字對應二進制位不同的位置的數(shù)目。給出兩個整數(shù)和,計算它們之間的漢明距離。第三題買賣股票的最佳時機難度簡單給定一個數(shù)組,它的第個元素是一支給定股票第天的價格。 寫在前面 這幾天斷斷續(xù)續(xù)做了題目,也在慢慢體會一些數(shù)據(jù)思維。終于不用邊做視頻邊寫題目啦~開心~把這幾天的題解發(fā)一下~ 認真做題的分割線 第一題 977. 有序數(shù)組的平方難度...
閱讀 3049·2021-11-24 09:39
閱讀 3691·2021-11-22 13:54
閱讀 3474·2021-11-16 11:45
閱讀 2546·2021-09-09 09:33
閱讀 3271·2019-08-30 15:55
閱讀 1352·2019-08-29 15:40
閱讀 989·2019-08-29 15:19
閱讀 3481·2019-08-29 15:14