博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
力扣题目17-22-709,832,521,788,520,35,125,58
阅读量:5869 次
发布时间:2019-06-19

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

实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。

 

示例 1:

输入: "Hello" 输出: "hello"

示例 2:

输入: "here" 输出: "here"

示例 3:

输入: "LOVELY" 输出: "lovely"

 

class Solution:     def toLowerCase(self, str: str) -> str: str = str.lower() return str

 

 

给定一个二进制矩阵 A,我们想先水平翻转图像,然后反转图像并返回结果。

水平翻转图片就是将图片的每一行都进行翻转,即逆序。例如,水平翻转 [1, 1, 0] 的结果是 [0, 1, 1]

反转图片的意思是图片中的 0 全部被 1 替换, 1 全部被 0 替换。例如,反转 [0, 1, 1] 的结果是 [1, 0, 0]

示例 1:

输入: [[1,1,0],[1,0,1],[0,0,0]] 输出: [[1,0,0],[0,1,0],[1,1,1]] 解释: 首先翻转每一行: [[0,1,1],[1,0,1],[0,0,0]];      然后反转图片: [[1,0,0],[0,1,0],[1,1,1]]

示例 2:

输入: [[1,1,0,0],[1,0,0,1],[0,1,1,1],[1,0,1,0]] 输出: [[1,1,0,0],[0,1,1,0],[0,0,0,1],[1,0,1,0]] 解释: 首先翻转每一行: [[0,0,1,1],[1,0,0,1],[1,1,1,0],[0,1,0,1]];      然后反转图片: [[1,1,0,0],[0,1,1,0],[0,0,0,1],[1,0,1,0]]

说明:

  • 1 <= A.length = A[0].length <= 20

  • 0 <= A[i][j] <= 1

 

 

class Solution:     def flipAndInvertImage(self, A: List[List[int]]) -> List[List[int]]: return[[x^1 for x in i[::-1]]for i in A]

给定两个字符串,你需要从这两个字符串中找出最长的特殊序列。最长特殊序列定义如下:该序列为某字符串独有的最长子序列(即不能是其他字符串的子序列)。

子序列可以通过删去字符串中的某些字符实现,但不能改变剩余字符的相对顺序。空序列为所有字符串的子序列,任何字符串为其自身的子序列。

输入为两个字符串,输出最长特殊序列的长度。如果不存在,则返回 -1。

示例 :

输入: "aba", "cdc" 输出: 3 解析: 最长特殊序列可为 "aba" (或 "cdc")

说明:

  1. 两个字符串长度均小于100。

  2. 字符串中的字符仅含有 'a'~'z'。

class Solution:     def findLUSlength(self, a: str, b: str) -> int: if a == b: return -1 else: return max(len(a),len(b))

我们称一个数 X 为好数, 如果它的每位数字逐个地被旋转 180 度后,我们仍可以得到一个有效的,且和 X 不同的数。要求每位数字都要被旋转。

如果一个数的每位数字被旋转以后仍然还是一个数字, 则这个数是有效的。0, 1, 和 8 被旋转后仍然是它们自己;2 和 5 可以互相旋转成对方;6 和 9 同理,除了这些以外其他的数字旋转以后都不再是有效的数字。

现在我们有一个正整数 N, 计算从 1N 中有多少个数 X 是好数?

示例: 输入: 10 输出: 4 解释: 在[1, 10]中有四个好数: 2, 5, 6, 9。 注意 1 和 10 不是好数, 因为他们在旋转之后不变。

注意:

  • N 的取值范围是 [1, 10000]

class Solution:     def rotatedDigits(self, N: int) -> int: lis = ['3','4','7'] lis_1 = ['2','5','6','9'] count = 0 for i in range(1,N+1): flag = False# 为何flag放在for循环之外的时候 最后输出为5(以10为例)? for s in str(i): if s in lis: flag = False break elif s in lis_1: flag = True if flag: count +=1 return count

给定一个单词,你需要判断单词的大写使用是否正确。

我们定义,在以下情况时,单词的大写用法是正确的:

  1. 全部字母都是大写,比如"USA"。

  2. 单词中所有字母都不是大写,比如"leetcode"。

  3. 如果单词不只含有一个字母,只有首字母大写, 比如 "Google"。

否则,我们定义这个单词没有正确使用大写字母。

示例 1:

输入: "USA" 输出: True

示例 2:

输入: "FlaG" 输出: False

注意: 输入是由大写和小写拉丁字母组成的非空单词。

 

class Solution:     def detectCapitalUse(self, word: str) -> bool: return word.capitalize()==word or word.upper()==word or word.lower()==word

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

你可以假设数组中无重复元素。

示例 1:

输入: [1,3,5,6], 5 输出: 2

示例 2:

输入: [1,3,5,6], 2 输出: 1

示例 3:

输入: [1,3,5,6], 7 输出: 4

示例 4:

输入: [1,3,5,6], 0 输出: 0
class Solution:     def searchInsert(self, nums: List[int], target: int) -> int: for i in range(len(nums)): if i == 0 and target <= nums[i]: return 0 else: if i == len(nums)-1: return i+1 else: if nums[i] ==target: return i else: if nums[i]
=target: return i+1

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。

说明:本题中,我们将空字符串定义为有效的回文串。

示例 1:

输入: "A man, a plan, a canal: Panama" 输出: true

示例 2:

输入: "race a car" 输出: false
class Solution:     def isPalindrome(self, s: str) -> bool: s = ''.join(filter(str.isalnum,s)).lower() return s==s[::-1]

 

 

 

给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。

如果不存在最后一个单词,请返回 0 。

说明:一个单词是指由字母组成,但不包含任何空格的字符串。

示例:

输入: "Hello World" 输出: 5
class Solution:     def lengthOfLastWord(self, s: str) -> int: s = s.strip() if s == '': return 0 else: return len(s.split(' ')[-1])

 

转载于:https://www.cnblogs.com/zrx19960128/p/10897330.html

你可能感兴趣的文章
python作业
查看>>
vsftp2
查看>>
FileGee文件同步备份(增量备份)
查看>>
Cacti之交换机端口无法正常显示
查看>>
行为识别研究摘录
查看>>
awk 实例
查看>>
Maclean Liu的脚本工具盒
查看>>
linux命令:while循环
查看>>
MacBook如何用Parallels Desktop安装windows7/8
查看>>
Lesson 8 VMotion
查看>>
PhpStorm Git 配置(解决文件没有变色的问题)
查看>>
xhprof php性能测试
查看>>
来自小姐姐的入门推荐:7个基本机器学习算法Python实现
查看>>
整理Exchange数据库空白空间
查看>>
有关台式机不能被开启的故障诊断步骤
查看>>
生活?
查看>>
oracle导出结果集为xml格式文件
查看>>
Kubernetes 1.5安装
查看>>
Python Split函数的用法总结
查看>>
linux中开启和关闭防火墙
查看>>