博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode刷题笔记(2)(python)
阅读量:6209 次
发布时间:2019-06-21

本文共 2201 字,大约阅读时间需要 7 分钟。


344 Reverse String

题意:给出一个字符串对字符串进行翻转(reverse)
思路:直接使用切片函数进行翻转(网上看到的,具体怎么使用有点迷)[::-1]
代码:`class Solution(object):

def reverseString(self, s):    return s[::-1]`

557 Reverse Words in a String III

题意,给出一句话,将这句话里面每个单词的字母顺序改变,但是单词顺序不变输出。
思路:先用split()将字符串分割,再遍历,将字符串内每个单词进行翻转
代码:`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翻转,2n*k不翻转的规则进行处理。
思路:先将字符串分段,然后再根据段落进行处理最后将字符串输出。
代码:`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

题意:给定一个多位整数,将整数每位数字重复相加直到结果为个位数
思路:给定一个死循环,在里面不断求和即可。
代码:`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

题意:给定一个数,使这个数各位平方相加,如果最后的值是1则返回true,如果陷入死循环则返回false
思路:先给定一个死循环,然后先判断是否是1再判断是否是之前出现过的数,然后计算
代码: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

题意:给定一个数,如果这个数不被2 3 5且不为1则这个数为丑陋数(ugly number)
思路:死循环分别除1,先检测,如果数为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

转载地址:http://lgqca.baihongyu.com/

你可能感兴趣的文章
开源与云计算
查看>>
人工智能时代号角已吹响 COMPUTEX如何凝聚AI这股力量?
查看>>
物联网商机迸发 LPWAN芯片现身 本文转自d1net(转载)
查看>>
IBM将推NVMe存储解决方案
查看>>
ODB——基于c++的ORM映射框架尝试(安装)
查看>>
一分钟了解阿里云产品:RDS概述
查看>>
百度推送老是不成功,没有提醒查找原因
查看>>
JSON
查看>>
仿美团实现地域选择和城市列表
查看>>
fastlane use_legacy_build_api true
查看>>
Git 学习笔记之 merge
查看>>
ajax跨域
查看>>
【三角函数】已知直角三角形的斜边长度和一个锐角角度,求另外两条直角边的长度...
查看>>
iOS端(腾讯Bugly)闪退异常上报扑获日志集成与使用指南
查看>>
在Markdown中输入数学公式
查看>>
萌新一手包App前后端开发日记(一)
查看>>
经典问题之「分支预测」
查看>>
好程序员web前端分享MVVM框架Vue实现原理
查看>>
Github入门详情教程
查看>>
Java之Set集合的"怪"
查看>>