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 0
        temp = s.split(' ')
        temp = [t for t in temp if len(t) > 0]
        if len(temp) == 0:
            return 0
        else:
            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] * n
        count = 0
        for i in range(2, n):
            if is_prime[i]:
                count += 1
                for j in range(i * i, n, i):
                    is_prime[j] = 0
        return 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每日一练 专栏

你可能感兴趣的:(#,Python每日一练,刷题专栏,python,排列)