当前位置:
首页 > Python基础教程 >
-
python基础教程之力扣题目汇总(丑数,重复N的元
1.题目描述
-
编写一个程序判断给定的数是否为丑数。
丑数就是只包含质因数
2, 3, 5
的正整数。示例 1:
输入: 6 输出: true 解释: 6 = 2 × 3
示例 2:
输入: 8
输出: true
解释: 8 = 2 × 2 × 2
示例 3:
输入: 14
输出: false
解释: 14 不是丑数,因为它包含了另外一个质因数 7。
说明:
-
1
是丑数。 - 输入不会超过 32 位有符号整数的范围: [−231, 231 − 1]。
2.解题思路
从题目描述上将,是判断一个数是否能被,2,3,5除,然后被这几个数除会余数肯定为0,而且除到最后他会变成1
3.解题
class Solution:
def isUgly(self, num: int) -> bool:
if num == 0:
return False
div = [2, 3, 5]
for x in div:
while num % x == 0:
num /= x
return num == 1
重复 N 次的元素
1.题目描述
给定一个 n × n 的二维矩阵表示一个图像。
将图像顺时针旋转 90 度。
说明:
你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。
**示例 1:在大小为 2N
的数组 A
中有 N+1
个不同的元素,其中有一个元素重复了 N
次。
返回重复了 N
次的那个元素。
示例 1:
输入:[1,2,3,3]
输出:3
示例 2:
输入:[2,1,2,5,3,2]
输出:2
示例 3:
输入:[5,1,5,2,5,3,5,4]
输出:5
提示:
-
4 <= A.length <= 10000
-
0 <= A[i] < 10000
-
A.length
为偶数
2.解题思路
#方法1 用list内置函数.count 进行计数
#把里面的元素变成字典,根据字典进行计数
3.解题
class Solution:
def repeatedNTimes(self, A: List[int]) -> int:
#方法1
# A_1 = set(A)
# A_1 = list(A_1)
# for a in A_1:
# if A.count(a) == len(A)/2:
# return a
# break
# 超时
#方法二
dic = {}
for a in A:
if a not in dic:
dic[a]=1 #把里面数字生成字典的KEY并且计数为1
else:
dic[a]+=1 #把里面的数字每碰到相同的加1
num = len(A)/2
for b in dic:
if dic[b] == num:
return b
break
求众数
1题目描述
-
-
给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于
⌊ n/2 ⌋
的元素。你可以假设数组是非空的,并且给定的数组总是存在众数。
示例 1:
输入: [3,2,3] 输出: 3
示例 2:
输入: [2,2,1,1,1,2,2] 输出: 2
-
2.解题思路
方法1:根据list进行count进行计数
方法2:生成字典
3.解题
class Solution:
def majorityElement(self, nums: List[int]) -> int:
#方法1
# new_list = []
# for a in nums:
# if nums.count(a) >len(nums)/2:
# new_list.append(a)
# return max(set(new_list))
#超时
#方法二
dic = {}
for a in nums:
if a not in dic :
dic[a] = 1
else:
dic[a] += 1
return max(dic,key=dic.get) #根据字典里面的值最大取出他的关键字
`有更加好的思路,或者解题方法评论区留言谢谢
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式