> 文章列表 > Python每日一练(20230413)

Python每日一练(20230413)

Python每日一练(20230413)

目录

1. 最后一个单词的长度  ※

2. 全排列  🌟🌟

3. 计数质数  ※

🌟 每日一练刷题专栏 🌟

Golang每日一练 专栏

Python每日一练 专栏

C/C++每日一练 专栏

Java每日一练 专栏


1. 最后一个单词的长度

给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。

单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。

示例 1:

输入:s = "Hello World"
输出:5

示例 2:

输入:s = " "
输出:0

提示:

  • 1 <= s.length <= 104
  • s 仅有英文字母和空格 ' ' 组成

出处:

https://edu.csdn.net/practice/25454310

代码:

class Solution(object):def lengthOfLastWord(self, s):""":type s: str:rtype: int"""if len(s) == 0:return 0temp = s.split(' ')temp = [t for t in temp if len(t) > 0]if len(temp) == 0:return 0else:return len(temp[-1])
# %%
s = Solution()
print(s.lengthOfLastWord(s = "  Hello World  "))

输出:

5


2. 全排列

给定一个 没有重复 数字的序列,返回其所有可能的全排列。

示例:

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

出处:

https://edu.csdn.net/practice/25454311

代码:

class Solution:def permute(self, nums):e=[]if(len(nums)==1):return [nums]for i in range(len(nums)):q=self.permute(nums[:i]+nums[i+1:])for c in q:e.append([nums[i]]+c)return e
# %%
s = Solution()
print(s.permute(nums = [1,2,3]))

输出:

[[1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1]]


3. 计数质数

统计所有小于非负整数 n 的质数的数量。

示例 1:

输入:n = 10
输出:4
解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。

示例 2:

输入:n = 0
输出:0

示例 3:

输入:n = 1
输出:0

提示:

  • 0 <= n <= 5 * 10^6

出处:

https://edu.csdn.net/practice/25454312

代码:

class Solution:def countPrimes(self, n: int) -> int:is_prime = [1] * ncount = 0for i in range(2, n):if is_prime[i]:count += 1for j in range(i * i, n, i):is_prime[j] = 0return count
# %%
s = Solution()
print(s.countPrimes(n = 10))
print(s.countPrimes(n = 0))
print(s.countPrimes(n = 1))

输出:

4
0
0


🌟 每日一练刷题专栏 🌟

持续,努力奋斗做强刷题搬运工!

👍 点赞,你的认可是我坚持的动力! 

🌟 收藏,你的青睐是我努力的方向! 

评论,你的意见是我进步的财富!  

 主页:https://hannyang.blog.csdn.net/

Golang每日一练 专栏

Python每日一练 专栏

C/C++每日一练 专栏

Java每日一练 专栏