没有合适的资源?快使用搜索试试~ 我知道了~
首页"labuladong刷题笔记:算法笔记,数据结构,双指针,二分搜索,字符串问题,滑动窗口,数组问题"
"labuladong刷题笔记:算法笔记,数据结构,双指针,二分搜索,字符串问题,滑动窗口,数组问题"
需积分: 0 1 下载量 156 浏览量
更新于2023-11-23
收藏 17.12MB PDF 举报
本文介绍了在线网站“labuladong”的刷题全家桶第一部分共792个目录,包括基础数据结构数组、双指针、二分搜索等多个题目。内容包括丑数 III、在 D 天内送达包裹的能力、爱吃香蕉的珂珂、剑指 Offer II 07、狒狒吃香蕉、山脉数组的峰顶索引等题目。另外还有阶乘函数后 K 个零、在排序数组中查找元素的第一个和最后一个位置、二分查找、在排序数组中查找数字 I等多个题目。最后还介绍了其他一些题目,如调整数组顺序使奇数位于偶数前面、删除有序数组中的重复项、移除元素等。
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/88409781/bg10.jpg)
在线⽹站 labuladong的刷题全家桶
16 / 792
1201.
丑
数
III
L
ee
t
C
o
de
⼒
扣
难
度
1201.
U
gl
y
N
um
be
r
III
1201.
丑
数
III
🟠
Stars 110k
精
品
课
程
精
品
课
程
查
看
查
看
公
众
号
@labuladong
B
站
@labuladong
标
签
:
⼆
分
搜
索
,
数
学
,
链
表
双
指
针
给
你
四
个
整数
:
n
、
a
、
b
、
c
,
请
你
设计
⼀个
算
法
来
找
出
第
n
个丑
数
。
丑
数
是
可
以
被
a
或
b
或
c
整
除
的
正
整数
。
示
例
1
:
输
⼊
:
n = 3, a = 2, b = 3, c = 5
输
出
:
4
解
释
:丑
数
序
列
为
2, 3, 4, 5, 6, 8, 9, 10...
其
中
第
3
个
是
4
。
基
本
思
路
这道
题
和
264.
丑
数
II
有
些
类
似
,
你
把
第
264
题
合
并
有
序
链
表
的
解
法
照
搬
过
来
稍
微
改改
就
能
解
决
这道
题
,
代
码
我
写
在
Solution2
⾥
⾯
了
。
但
是
注
意
题
⽬
给
的
数据
规
模
,
a, b, c, n
都
是
⾮
常
⼤
的
数
字
,
如
果
⽤
合
并
有
序
链
表
的
思
路
,
其
复
杂
度
是
O
(
N
)
,
对
于
这
么
⼤
的
数据
规
模
来
说
也
是
⽐
较
慢
的
,
应
该
会
超
时
,
⽆
法
通过
⼀
些
测
试
⽤
例
。
这道
题
的
正
确
解
法
难
度
⽐
较
⼤
,
难
点
在
于你
要
把
⼀
些
数
学
知
识
和
⼆
分
搜
索
技
巧
结
合
起
来
才
能
⾼
效
解
决
这
个
问
题
。
⾸
先
,
根
据
⼆
分
查
找
的
实
际
运
⽤
中
讲
到
的
⼆
分
搜
索
运
⽤
⽅
法
,
我
们
可
以
抽
象
出
⼀个
单
调
递
增
的
函
数
f
:
f(num, a, b, c)
计
算
[1..num]
中
,
能
够
整
除
a
或
b
或
c
的
数
字
的
个
数
,
显
然
函
数
f
的
返
回
值
是
随
着
num
的
增
加
⽽
增
加
的
(
单
调
递
增
)
。
题
⽬
让
我
们
求
第
n
个
能
够
整
除
a
或
b
或
c
的
数
字
是
什么
,
也
就
是
说
我
们
要
找
到
⼀个
num
,
使
得
f(num, a,
b, c) == n
。
有
了
上
述
思
路
,
就
可
以
按
照
⼆
分
查
找
的
实
际
运
⽤
中
给
出
的
模
板
运
⽤
⼆
分
搜
索
算
法
了
。
关
键
说
⼀下
函
数
f
怎
么
实
现
,
这
⾥
⾯
涉
及
集
合
论
定
理
以
及
最
⼩
公
因
数
、
最
⼩
公
倍
数
的
计
算
⽅
法
。
⾸
先
,
[1..num]
中
,
我把
能
够
整
除
a
的
数
字
归
为
集
合
A
,
能
够
整
除
b
的
数
字
归
为
集
合
B
,
能
够
整
除
c
的
数
字
归
为
集
合
C
,
那
么
len(A) = num / a, len(B) = num / b, len(C) = num / c
,
这
个
很
好
理
解
。
但
是
f(num, a, b, c)
的
值
肯
定
不
是
num / a + num / b + num / c
这
么
简
单
,
因
为你
注
意
有
些
数
字
可
能
可
以
被
a, b, c
中
的
两个
数
或
三个
数
同
时
整
除
,
如
下
图
:
![](https://csdnimg.cn/release/download_crawler_static/88409781/bg11.jpg)
在线⽹站 labuladong的刷题全家桶
17 / 792
按
照
集
合
论
的
算
法
,
这
个
集
合
中
的
元
素
应
该
是
:
A
+
B
+
C
-
A
∩
B
-
A
∩
C
-
B
∩
C
+
A
∩
B
∩
C
。
结
合
上
图
应
该
很
好
理
解
。
问题
来
了
,
A, B, C
三个
集
合
的
元
素
个
数
我
们
已
经
算
出
来
了
,
但
如
何
计
算
像
A ∩ B
这
种
交
集
的
元
素
个
数
呢
?
其
实
也
很
容
易
想
明
⽩
,
A ∩ B
的
元
素
个
数
就
是
n / lcm(a, b)
,
其
中
lcm
是
计
算
最
⼩
公
倍
数
(
L
ea
st
C
ommon
M
u
l
t
i
p
le
)
的
函
数
。
类
似
的
,
A ∩ B ∩ C
的
元
素
个
数
就
是
n / lcm(lcm(a, b), c)
的
值
。
现
在
的
问题
是
,
最
⼩
公
倍
数
怎
么
求
?
直
接
记
住
定
理
吧
:
lcm(a, b) = a * b / gcd(a, b)
,
其
中
gcd
是
计
算
最
⼤
公
因
数
(
G
r
ea
t
e
st
C
ommon
D
i
v
i
sor
)
的
函
数
。
现
在
的
问题
是
,
最
⼤
公
因
数
怎
么
求
?
这
应
该
是
经
典
算
法
了
,
我
们
⼀
般
叫
辗转
相
除
算
法
(
或
者
欧
⼏
⾥
得
算
法
)
。
好
了
,
套娃
终
于
套
完
了
,
我
们
可
以
把
上
述
思
路
翻
译
成
解
法
,
注
意
本
题
数据
规
模⽐
较
⼤
,
有时
候
需
要
⽤
long
类
型
防
⽌
int
溢
出
,
具
体
看
我
的
代
码
实
现
以
及
注
释
吧
。
详
细
题
解
:丑
数
系
列
算
法
详解
解
法
代
码
//
⼆
分
搜
索
+
数
学
解
法
class Solution {
public int nthUglyNumber(int n, int a, int b, int c) {
![](https://csdnimg.cn/release/download_crawler_static/88409781/bg12.jpg)
在线⽹站 labuladong的刷题全家桶
18 / 792
//
题
⽬
说
本
题
结
果
在
[1, 2 * 10^9]
范
围
内
,
//
所
以
就
按
照
这
个
范
围
初
始
化
两
端
都
闭
的
搜
索
区
间
int left = 1, right = (int) 2e9;
//
搜
索
左
侧
边
界
的
⼆
分
搜
索
while (left <= right) {
int mid = left + (right - left) / 2;
if (f(mid, a, b, c) < n) {
// [1..mid]
中
的
元
素
个
数
不
⾜
n
,
所
以
⽬
标
在
右
侧
left = mid + 1;
} else {
// [1..mid]
中
的
元
素
个
数
⼤
于
n
,
所
以
⽬
标
在
左
侧
right = mid - 1;
}
}
return left;
}
//
计
算
[1..num]
之
间
有
多
少
个
能
够
被
a
或
b
或
c
整
除
的
数
字
long f(int num, int a, int b, int c) {
long setA = num / a, setB = num / b, setC = num / c;
long setAB = num / lcm(a, b);
long setAC = num / lcm(a, c);
long setBC = num / lcm(b, c);
long setABC = num / lcm(lcm(a, b), c);
//
集
合
论
定
理
:
A + B + C - A ∩ B - A ∩ C - B ∩ C + A ∩ B ∩ C
return setA + setB + setC - setAB - setAC - setBC + setABC;
}
//
计
算
最
⼤
公
因
数
(
辗转
相
除
/
欧
⼏
⾥
得
算
法
)
long gcd(long a, long b) {
if (a < b) {
//
保
证
a > b
return gcd(b, a);
}
if (b == 0) {
return a;
}
return gcd(b, a % b);
}
//
最
⼩
公
倍
数
long lcm(long a, long b) {
//
最
⼩
公
倍
数
就
是
乘
积
除
以
最
⼤
公
因
数
return a * b / gcd(a, b);
}
}
//
⽤
合
并
单
链
表
的
思
路
(
超
时
)
class Solution2 {
public int nthUglyNumber(int n, int a, int b, int c) {
//
可
以
理
解
为
三个
有
序
链
表
的
头
结
点
的
值
long productA = a, productB = b, productC = c;
//
可
以
理
解
为
合
并
之
后
的
有
序
链
表
上
的
指
针
int p = 1;
![](https://csdnimg.cn/release/download_crawler_static/88409781/bg13.jpg)
在线⽹站 labuladong的刷题全家桶
19 / 792
long min = -666;
//
开
始
合
并
三个
有
序
链
表
,
获
取
第
n
个
节
点
的
值
while (p <= n) {
//
取
三个
链
表
的
最
⼩
结
点
min = Math.min(Math.min(productA, productB), productC);
p++;
//
前
进
最
⼩
结
点
对
应
链
表
的
指
针
if (min == productA) {
productA += a;
}
if (min == productB) {
productB += b;
}
if (min == productC) {
productC += c;
}
}
return (int) min;
}
}
类
似
题
⽬
:
263.
丑
数
🟢
264.
丑
数
II
🟠
313.
超
级
丑
数
🟠
![](https://csdnimg.cn/release/download_crawler_static/88409781/bg14.jpg)
在线⽹站 labuladong的刷题全家桶
20 / 792
1011.
在
D
天
内
送达
包
裹
的
能
⼒
L
ee
t
C
o
de
⼒
扣
难
度
1011.
C
a
p
aci
ty
T
o
S
hi
p
P
ackage
s
W
i
t
hi
n
D D
a
ys
1011.
在
D
天
内
送达
包
裹
的
能
⼒
🟠
Stars 110k
精
品
课
程
精
品
课
程
查
看
查
看
公
众
号
@labuladong
B
站
@labuladong
标
签
:
⼆
分
搜
索
传
送
带
上
的
第
i
个
包
裹
的
重量
为
weights[i]
,
运输
船
每
天
都
会
来
运输这
些
包
裹
,
每
天
装
载
的
包
裹
重量
之
和
不
能
超
过
船
的
最
⼤
运载
重量
。
如
果
要
在
D
天
内
将
所
有
包
裹
运输
完
毕
,
求
运输
船
的
最
低
运载
能
⼒
。
示
例
1
:
输
⼊
:
weights = [1,2,3,4,5,6,7,8,9,10], D = 5
输
出
:
15
解
释
:
船舶
最
低
载
重
15
就
能
够
在
5
天
内
送达
所
有
包
裹
,
如
下
所
示
:
第
1
天
:
1, 2, 3, 4, 5
第
2
天
:
6, 7
第
3
天
:
8
第
4
天
:
9
第
5
天
:
10
请
注
意
,
货
物
必
须
按
照
给
定
的
顺
序
装
运
,
因
此
使
⽤
载
重
能
⼒
为
14
的
船舶
并
将
包
装
分
成
(2, 3, 4,
5), (1, 6, 7), (8), (9), (10)
是
不
允
许
的
。
基
本
思
路
PS
:
这道
题
在
《
算
法
⼩
抄
》
的
第
360
⻚
。
⼆
分
搜
索
的
套
路
⽐
较
固
定
,
如
果
遇
到
⼀个
算
法
问题
,
能
够
确
定
x, f(x), target
分别
是
什么
,
并
写出
单
调
函
数
f
的
代
码
。
船
的
运载
能
⼒
就
是
⾃
变
量
x
,
运输
天
数
和
运载
能
⼒
成
反
⽐
,
所
以
可
以
定
义
f(x)
表
示
x
的
运载
能
⼒
下
需
要
的
运输
天
数
,
target
显
然
就
是
运输
天
数
D
,
我
们
要
在
f(x) == D
的
约
束
下,
算
出
船
的
最
⼩
载
重
。
剩余791页未读,继续阅读
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
qq_41881816
- 粉丝: 7
- 资源: 2
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- 京瓷TASKalfa系列维修手册:安全与操作指南
- 小波变换在视频压缩中的应用
- Microsoft OfficeXP详解:WordXP、ExcelXP和PowerPointXP
- 雀巢在线媒介投放策划:门户网站与广告效果分析
- 用友NC-V56供应链功能升级详解(84页)
- 计算机病毒与防御策略探索
- 企业网NAT技术实践:2022年部署互联网出口策略
- 软件测试面试必备:概念、原则与常见问题解析
- 2022年Windows IIS服务器内外网配置详解与Serv-U FTP服务器安装
- 中国联通:企业级ICT转型与创新实践
- C#图形图像编程深入解析:GDI+与多媒体应用
- Xilinx AXI Interconnect v2.1用户指南
- DIY编程电缆全攻略:接口类型与自制指南
- 电脑维护与硬盘数据恢复指南
- 计算机网络技术专业剖析:人才培养与改革
- 量化多因子指数增强策略:微观视角的实证分析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)