摘要:思路先用將字符串分割,再遍歷,將字符串內(nèi)每個單詞進行翻轉(zhuǎn)代碼題意給定一個字符串,將字符串按照翻轉(zhuǎn),不翻轉(zhuǎn)的規(guī)則進行處理。思路先將字符串分段,然后再根據(jù)段落進行處理最后將字符串輸出。
344 Reverse String
題意:給出一個字符串對字符串進行翻轉(zhuǎn)(reverse)
思路:直接使用切片函數(shù)進行翻轉(zhuǎn)(網(wǎng)上看到的,具體怎么使用有點迷)[::-1]
代碼:`class Solution(object):
def reverseString(self, s): return s[::-1]`
557 Reverse Words in a String III
題意,給出一句話,將這句話里面每個單詞的字母順序改變,但是單詞順序不變輸出。
思路:先用split()將字符串分割,再遍歷,將字符串內(nèi)每個單詞進行翻轉(zhuǎn)
代碼:`class Solution(object):
def reverseWords(self, s): l=[] s=s.split() for i in s: l.append(i[::-1]) return " ".join(l)`
541 Reverse String II
題意:給定一個字符串,將字符串按照nk翻轉(zhuǎn),2n*k不翻轉(zhuǎn)的規(guī)則進行處理。
思路:先將字符串分段,然后再根據(jù)段落進行處理最后將字符串輸出。
代碼:`class Solution(object):
def reverseStr(self, s, k): al=len(s)//k+1 s=list(s) last=[] returnl=[] for i in range(1,al+1): if i<=al-1: if i%2==1: last.append(s[(i-1)*k:i*k][::-1]) elif i%2==0: last.append(s[(i-1)*k:i*k]) elif i>al-1: if i%2==1: last.append(s[(i-1)*k:][::-1]) elif i%2==0: last.append(s[(i-1)*k:]) for j in last: for k in j: returnl.append(k) return "".join(returnl)`
258 Add Digits
題意:給定一個多位整數(shù),將整數(shù)每位數(shù)字重復(fù)相加直到結(jié)果為個位數(shù)
思路:給定一個死循環(huán),在里面不斷求和即可。
代碼:`class Solution(object):
def addDigits(self, num): while 1: if num<10: return num if num>=10: result=0 while num!=0: result += num%10 num//=10 num=result `
202 Happy Number
題意:給定一個數(shù),使這個數(shù)各位平方相加,如果最后的值是1則返回true,如果陷入死循環(huán)則返回false
思路:先給定一個死循環(huán),然后先判斷是否是1再判斷是否是之前出現(xiàn)過的數(shù),然后計算
代碼:class Solution(object):
def isHappy(self, n): numlist=[] result=0 while 1: if n==1: return 1==1 for i in numlist: if n==i: return 1==2 numlist.append(n) while n!=0: result+=(n%10)**2 n//=10 n=result result=0
263 Ugly Number
題意:給定一個數(shù),如果這個數(shù)不被2 3 5且不為1則這個數(shù)為丑陋數(shù)(ugly number)
思路:死循環(huán)分別除1,先檢測,如果數(shù)為0返回false
代碼:
class Solution(object):
def isUgly(self, num): while 1: if num==0: return 1==2 if num%2==0: num/=2 elif num%3==0: num/=3 elif num%5==0: num/=5 elif num==1: return 1==1 else: return 1==2
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/40888.html
摘要:最近時間準備面試,開始在上刷題了。思路將兩個數(shù)用轉(zhuǎn)換為二進制需要去除前面的,因為位數(shù)不同所以需要在前面補充一定位數(shù)的,然后將兩個字符串遍歷就可以直接得到漢明距離代碼 最近時間準備面試,開始在leetcode上刷題了。于是在segmentfault上寫點東西來記錄下。可能會有各種弱智情況,望指出。 Array Partition I題意:這個題目看原題實在沒有看懂,在網(wǎng)上找的翻譯,大致...
摘要:題意給出一串二進制數(shù)組,求數(shù)組中最長的連續(xù)的個數(shù)思路遍歷數(shù)組判斷,然后將值添加到長度保存數(shù)組中,取保存數(shù)組最大值。本題要考慮輸入的數(shù)組為的狀況。代碼題意給出一個,從里面獲取兩個數(shù)。 485 Max Consecutive Ones題意:給出一串二進制數(shù)組,求數(shù)組中最長的連續(xù)1的個數(shù)思路:遍歷數(shù)組判斷,然后將值添加到長度保存數(shù)組中,取保存數(shù)組最大值。本題要考慮輸入的數(shù)組為[0],[1]的...
摘要:現(xiàn)在發(fā)出來的版本,我重新使用了語言實現(xiàn)。其實我之前介紹的老師課程也大量參考和使用算法這本書上的思路和例題。看這本書主要是讓我覺得算法可以以比較輕松的方式入門。劍指這本書主要用于準備算法面試,在網(wǎng)絡(luò)上備受好評。 我是一個半路出家的程序員,在我剛開始從事編碼工作的頭幾年,我沒有接觸過算法和數(shù)據(jù)結(jié)構(gòu),覺得它們是只會在我找工作的時候用得到的知識。盡管有很多人跟我說過算法和數(shù)據(jù)結(jié)構(gòu)無比重要,我也...
摘要:技能點中結(jié)構(gòu)知識點聲明語句添加內(nèi)容鑒定存在本例是把作為找到下標根據(jù)返回下標返回數(shù)組最終代碼建立在哈希表中遍歷每個元素,找到可能與之匹配成的下標 問題: 給定一個整數(shù)數(shù)組 nums 和一個目標值 target,請你在該數(shù)組中找出和為目標值的兩個下標。你可以假設(shè)每種輸入只會對應(yīng)一個答案。但是,你不能重復(fù)利用這個數(shù)組中同樣的元素。 思路 首先遍歷一次整數(shù)數(shù)組,將數(shù)組下標和值建立哈希表,再從...
閱讀 1700·2021-11-02 14:47
閱讀 3648·2019-08-30 15:44
閱讀 1334·2019-08-29 16:42
閱讀 1731·2019-08-26 13:53
閱讀 935·2019-08-26 10:41
閱讀 3458·2019-08-23 17:10
閱讀 597·2019-08-23 14:24
閱讀 1717·2019-08-23 11:59