自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(2157)
  • 收藏
  • 关注

原创 数据结构与算法题目标签规则

基础思路(不标记):解决题目的整体思路。实现(不标记,除非题目完全考察编程语言实现):题目的要求是实现某个操作,根据题目描述将该操作实现。模拟:题目的要求是计算某个结果,通过模拟题目描述的操作来计算该结果。归纳:通过分析题目答案的规律性来得到答案。(LC-0335)枚举:枚举的思想是不断地猜测,从可能的集合中一一尝试,然后再判断题目的条件是否成立。搜索:对状态空间进行枚举,通过穷尽所有的可能来找到最优解,或者统计合法解的数量。与枚举区别于,搜索是在状态空间中进行枚举。“深度优先搜索-图论”和..

2022-05-02 07:31:42 479

原创 1:基本初等函数的性质

幂函数:y=xμy = x^\muy=xμ(μ∈R\mu \in Rμ∈R 是常数)函数定义域值域奇偶性单调性y=xμy = x^\muy=xμ(μ\muμ 为正奇数)RRRRRR奇函数增区间:RRRy=xμy = x^\muy=xμ(μ\muμ 为正偶数)RRR[0,+∞)[0,+\infty)[0,+∞)偶函数减区间:(−∞,0](-\infty,0](−∞,0];增区间:[0,+∞)[0,+\infty)[0,+∞)y=xμy = x^\muy=

2022-03-06 11:52:02 122

原创 C语言入门实验001:使用未经申请的内存的情况

#include <stdio.h>#include <string.h>int main() { char s[100]; scanf("%s", s); printf("s(%%p) = %p\n", s); printf("&s(%%p) = %p\n", &s); printf("&s[0](%%p) = %p\n", &s[0]); printf("s(%%s) = %s\n", s)

2022-03-05 09:38:09 280 1

原创 Python中不同解释器间哈希值统一的方法

在 Python 中,字符串(str类型)、字面值(bytes类型)和日期类型(datetime.datetime类型)的哈希值,只保证了在同一个解释器里相同(同一个解释器的不同进程之间也相同)。这是因为 Python 中 hash() 函数在计算以上类型的哈希值时,需要用到环境参数 PYTHONHASHSEED。PYTHONHASHSEED 参数可以在启动 Python 脚本时设置,如果不设置的话则将在 [0,4294967295] 范围内随机生成。只有需要求哈希值的对象相同,且 PYTHONHASHS

2022-01-12 13:20:00 155

原创 [PyYAML报错]ConstructorError: while constructing a Python object的处理方案

报错信息: ...... File "/opt/py3.8/site_packages/yaml/constructor.py", line 556, in find_python_name ConstructorError: while constructing a Python objectmodule '[yaml文件中的Python类路径]' is not imported in '[yml文件路径]', line 47, column 13报错原因:PyYAML 版

2022-01-10 13:08:50 215

原创 numpy删除某一行(列)的各个方法的效率分析

最终结论如下(如下结论同时适用于 Linux 环境和 Windows 环境):方法一:使用 np.delete 函数删除def func1(arr): arr2 = np.delete(arr, DELETE, axis=1) return arr2时间复杂度:O(M×N);空间复杂度:O(M×N);保持删除前原数组顺序;返回参数二维数组的浅拷贝,不是原地操作。方法二:先使用切片器将删除列后的所有列前移,再移除最后一列def func2(arr): arr[:,

2021-12-10 13:21:06 934

原创 Windows环境中SharedMemory共享内存的回收机制

我们可以通过如下方式创建一个新的共享内存块,并实例化一个关联到这个新的共享内存块的 SharedMemory 对象:shm = shared_memory.SharedMemory(name="shm_name", create=True, size=40)我们还可以通过如下方式,实例化一个关联到一个已经存在的共享内存块的 SharedMemory 对象:shared_memory.SharedMemory(name="shm_name")除了在 Python3 官方文档:multiproces

2021-12-02 22:09:13 555

原创 Python小工具:监视函数运行资源的装饰器

为了方便优化函数的运行时间和运行空间,我实现了一个可以装饰器,只要为目标函数或目标方法添加这个装饰器,就可以在控制台输出目标函数/方法的运行时间和运行空间。具体地,使用标准库 time 来监视运行时间,标准库 tracemalloc 来监视运行空间。因为使用标准库 tracemalloc 来监视运行空间时,会大幅度地增加目标函数的运行时间;又因为使用标准库 time 来监视运行时间的话需要增加 2 个浮点型变量用于存储时间戳,会略微增大目标函数的运行空间。所以,如果函数可以多次运行,我们就将测量目标函数运

2021-11-29 08:54:40 500

原创 《统计学习方法》啃书手册|目录(教材全解+Python实现)

《统计学习方法》啃书手册|第1章 统计学习及监督学习概论思考问题(在第1篇学习完成后)如何理解极大似然估计和最大后验概率估计?过拟合的产生原因及处理方法(举例说明)?正则化项为什么对应于模型的先验概率?先验概率为什么可以表示模型的复杂度?《统计学习方法》啃书手册|第2章 感知机思考问题感知机模型对训练数据的要求是什么?感知机模型的学习策略是什么?感知机学习算法的原始形式和对偶形式学习的参数分别是什么含义?在什么情况下感知机学习算法的对偶形式效率更高?《统计学习方法》啃书手册|第3章

2021-08-08 09:06:20 237

原创 《统计学习方法》啃书手册|所有模型总结

感知机 (perceptron)基本假设:训练数据是线性可分的。适用问题:二类分类。模型分类:监督学习模型、非概率模型、线性模型、参数化模型、判别模型。模型:f(x)=sign(w⋅x+b)f(x) = sign(w·x+b)f(x)=sign(w⋅x+b),其中w∈Rnw \in R^nw∈Rn称为权值,b∈Rb \in Rb∈R称为偏置;对应于特征空间中的分离超平面w⋅x+b=0w·x+b=0w⋅x+b=0。损失函数:L(w,b)=−∑xi∈Myi(w⋅xi+b)L(w,b) = -\sum_

2021-08-08 09:02:46 151

原创 手写李航《统计学习方法》书中全部算法(已完成71个)

用Python手写实现(矩阵计算和导数计算使用轮子)了李航《统计学习方法》中绝大部分可以实现的内容。除极少数还未完成内容已列出外,其他内容已全部完成。第02章 感知机【算法 2.1】感知机学习算法的原始形式(原生Python实现)【算法 2.2】感知机学习算法的对偶形式(原生Python实现)第03章 k近邻法【算法 3.1】k近邻计算(原生Python+sklearn的kd树实现)简单交叉验证选择KNN分类器(原生Python+sklearn的KNN分类器)S折交叉验证选择KNN分类器(.

2021-08-02 16:36:32 223

原创 LDA模型实战(1)|理解模型的假设、要素与学习

(一) LDA模型的假设上图是LDA模型作为概率图模型的板块表示。从中可以看出LDA模型的基本假设:文本中每个位置的话题相互独立;满足P(zm∣ψ)=∏n=1NmP(zmn∣ψ)P(\textbf{z}_m|\psi) = \prod_{n=1}^{N_m} P(z_{mn}|\psi)P(zm​∣ψ)=∏n=1Nm​​P(zmn​∣ψ)​​,其中ψ\psiψ​​为所有影响zmz_mzm​​​的参数;也可以引入平均场理论,将其理解为参数以平均作用效果替代了单个作用效果的加和。文本中每个位置的单词由

2021-07-28 15:53:02 225

原创 《统计学习方法》啃书辅助:第22章 无监督学习方法总结

22.1 无监督学习方法的关系和特点【补充说明】图22.1中的“无监督学习方法”,是用于解决无监督学习基本问题,即聚类问题、降维问题或概率模型估计问题的方法;而“基础机器学习方法”,是用于实现“无监督学习方法”的学习算法的方法。例如,主成分分析可以通过奇异值分解实现,潜在语义分析可以用奇异值分解或非负矩阵分解实现。【补充说明】表22.1中之所以将非负矩阵分解(NMF)归入“无监督学习方法”的“话题分析”类,是因为上文提到“NMF可以直接用于话题分析”。但也将NMF归入用于矩阵分解的“基础机器学习方法”。

2021-07-22 16:45:39 252

原创 《统计学习方法》啃书辅助:第13章 无监督学习概论

【推荐阅读】聚类算法:用于数据挖掘的聚类算法有哪些,各有何优势? - 清华大学大数据研究中心的回答 - 知乎【补充说明】书中介绍的硬聚类方法包括层次聚类和k均值聚类是硬聚类方法,软聚类方法包括高斯混合模型EM算法(第9章)。【补充说明】书中介绍的降维方法:主成分分析(PCA)。【补充说明】书中介绍的话题分析方法(可以形式化为概率模型估计问题或降维问题):潜在语义分析(LSA)、概率潜在语义分析(PLSA)、潜在狄利克雷分配(LDA)。...

2021-07-22 15:21:56 102

原创 《统计学习方法》啃书辅助:第12章 监督学习方法总结

【补充说明】EM算法是一种学习算法,用于求解含有隐变量的概率模型参数的极大似然估计。【补充说明】“朴素贝叶斯法”、“逻辑斯谛回归与最大熵”、“隐马尔可夫模型”和“条件随机场”的关系(图12.1)朴素贝叶斯法利用训练数据学习P(X∣Y)P(X|Y)P(X∣Y)​​​和P(Y)P(Y)P(Y)​​​的估计,在事实上求得了联合概率分布P(X,Y)=P(Y)P(X∣Y)P(X,Y) = P(Y) P(X|Y)P(X,Y)=P(Y)P(X∣Y)​​​的估计。在预测时,计算条件概率P(Y∣X)=P(X,Y)P(X)

2021-07-22 12:25:56 106

原创 《统计学习方法》啃书辅助:第1章 统计学习及监督学习概论

常用字母及符号说明输入空间:X\mathcal{X}X;特征空间:H\mathcal{H}H;假设空间:F\mathcal{F}F;输出空间:Y\mathcal{Y}Y;隐式结构(隐变量)空间Z\mathcal{Z}Z。输入变量:XXX​​;输出变量YYY​​​​。当输入变量为n维时,多个输入变量中的第i个变量:xi=(xi(1),xi(2),⋯ ,xi(n))∈X⊆Rnx_i = (x_i^{(1)},x_i^{(2)},\cdots,x_i^{(n)}) \in \mathcal{X} \sub

2021-07-22 10:41:39 110

原创 《统计学习方法》啃书辅助:第21章 PageRank算法

21.1 PageRank的定义【推荐阅读】拓扑:硬核科普:什么是拓扑? - 中科院物理所的文章 - 知乎【补充说明】网络拓扑结构在这里可以理解为网页之间的拓扑结构。页面即结点,超链接即连接结点的边,拓扑结构即页面和超链接的结构关系。【补充说明】随机矩阵,即满足所有元素非负且矩阵中每一列的元素之和为1的矩阵。(书中P. 356)PageRank基本定义求PageRank值(原生Python实现)import numpy as npdef pagerank_basic(M, tol=1e-8,

2021-07-21 16:55:05 131 1

原创 《统计学习方法》啃书辅助:第20章 潜在狄利克雷分配

【学习建议】建议在学习20.2之前先学习附录E.1(KL散度的定义)和附录E.2(狄利克雷分布的性质)。【学习建议】建议在学习20.4.3之前先学习附录B(牛顿法和拟牛顿法)。20.1.1 分布定义【补充解释】在多项分布中,p1n1p2n2⋯pknkp_1^{n1} p_2^{n2} \cdots p_k^{nk}p1n1​p2n2​⋯pknk​表示每一个满足条件的事件发生的概率,n!n1!n2!⋯nk!\frac{n!}{n_1! n_2! \cdots n_k!}n1​!n2​!⋯nk​!n!​表

2021-07-21 12:29:43 204

原创 # 《统计学习方法》啃书辅助:第19章 马尔可夫链蒙特卡罗法

19.1 蒙特卡罗法【重点】蒙特卡罗法要解决的问题是:假设概率分布的定义已知, 通过抽样获得概率分布的随机样本,并通过得到的随机样本对概率分布的特征进行分析。【补充解释】直接抽样法:直接利用分布函数抽样样本的方法。首先按照均匀分布在(0,1)(0,1)(0,1)内抽样得到uuu,然后通过二分查找在分布函数中寻找uuu对应的样本。但是很多概率分布很难求出分布函数或分布函数不方便计算。常用概率分布(原生Python实现)from abc import ABCfrom abc import abstra

2021-07-15 12:23:47 212 1

原创 《统计学习方法》啃书辅助:第18章 概率潜在语义分析

18.1 概率潜在语义分析模型【补充解释】“软的类别”是指软聚类中的类别。软聚类是指,一个单词或文本可以被分到两个或两个以上的类的分类方法。【补充说明】图18.5中的单词单纯形,即在定义域内,距离坐标原点的曼哈顿距离为111的点所构成的平面。多项分布已知随机试验中,事件AAA发生的概率是ppp,则事件AAA不发生的概率是q=1−pq=1-pq=1−p。nnn次独立重复的试验中,xxx表示事件AAA发生的次数,则事件AAA发生kkk次的概率为P(x=k)=Cnk×pk×qn−kP(x=k) = C

2021-07-14 08:19:58 126 1

原创 2021-07-13《统计学习方法》啃书辅助:第17章 潜在语义分析

【学习建议】建议在学习第17章前先学习附录E.1(KL散度的定义)。17.1 单词向量空间和话题向量空间【重点】单词向量空间模型的基本假设:文本中所有单词的出现情况表示了文本的语义内容。【补充解释】在说明kkk个话题向量t1,t2,⋯ ,tkt_1,t_2,\cdots,t_kt1​,t2​,⋯,tk​张成的话题向量空间的维数为kkk时,隐含了一个条件:t1,t2,⋯ ,tkt_1,t_2,\cdots,t_kt1​,t2​,⋯,tk​线性无关。【阅读建议】建议在阅读中列出单词-文本矩阵XXX、单词

2021-07-13 08:24:17 134 1

原创 《统计学习方法》啃书辅助:附录E KL散度的定义和狄利克雷分布的性质

E.1 KL散度的定义【补充解释】KL散度通常被称作相对熵(relative entropy),也称作信息散度(information divergence)。【阅读建议】参考离散型变量和连续型变量的信息熵公式离散型随机变量的信息熵公式为:H(P)=−∑ip(x)log p(x)=∑ip(x)log1p(x)H(P) = -\sum_i p(x) log \ p(x) = \sum_i p(x) log \frac{1}{p(x)}H(P)=−i∑​p(x)log p(x)=

2021-07-12 21:03:39 147

原创 《统计学习方法》啃书辅助:第16章 主成分分析

16.1.2 定义和导出【补充解释】x=(x1,x2,⋯ ,xm)Tx=(x_1,x_2,\cdots,x_m)^Tx=(x1​,x2​,⋯,xm​)T是mmm维随机变量,其中xxx的每个特征xix_ixi​都是一个随机变量。均值向量μ\muμ即mmm维随机变量的每个特征的均值,其中μi\mu_iμi​是随机变量xix_ixi​的均值。式16.3和式16.4的推导由式(16.2)和Σ=cov(x,x)=E[(x−μ)(x−μ)T]\Sigma = cov(x,x) = E[(x-\mu)(x-\mu)

2021-07-10 10:48:27 277 1

原创 《统计学习方法》啃书辅助:第15章 奇异值分解

【学习建议】建议在学习第15章前先学习附录D。15.1.1 定义与定理【补充解释】UUT=IU U^T = IUUT=I,其中III是单位矩阵,这个条件是正交矩阵的定义,即要求UUU是正交矩阵。VVT=IV V^T = IVVT=I同理。【勘误补充】P. 274 倒数第4行的“表”应写作“表示”。定理15.1的证明证明思路:设实矩阵AAA的奇异值分解为A=UΣVTA = U \Sigma V^TA=UΣVT,则有ATA=(UΣVT)T(UΣVT)=V(ΣTΣ)VTA^T A = (U \Sigma

2021-07-08 17:21:15 145 2

原创 《统计学习方法》啃书辅助:定理15.1(奇异值分解基本定理)证明详解

注:以下为《统计学习方法》第273页-第276页证明的展开详解(不跳步并注明引理)。首先,我们先来证明一些引理。其中,引用自他处的引理将标注来源但不予证明。【引理 1】 若矩阵AAA是实矩阵,则矩阵ATAA^TAATA是实对称矩阵。因为有(ATA)T=AT(AT)T=ATA(A^T A)^T = A^T (A^T)^T = A^T A(ATA)T=AT(AT)T=ATA。引理1得证。【引理 2】 设AAA为nnn阶对称矩阵,则必有正交矩阵PPP,使P−1AP=PTAP=ΛP^{-1}AP = P.

2021-07-08 08:57:47 381

原创 《统计学习方法》啃书辅助:附录D 矩阵的基本子空间

【补充说明】向量空间的子空间的第1个条件要求对数乘是封闭的,第2个条件要求对加法是封闭的。证明:行空间的维度等于列空间的维度首先引入主元的概念。“主元”是指矩阵变为阶梯形之后,非零行左边第1个非零元素。“主元列”是指“主元”所在的列。因为矩阵AAA的秩是AAA的阶梯形BBB中主元的个数。因为BBB对每个主元都有一个非零行,而这些行之间相互线性无关且张成行空间,所以矩阵AAA的秩等于行空间的维度。同理可得矩阵AAA的秩等于列空间的维度。于是行空间的维度等于列空间的维度。得证。证明:若YYY是RnR

2021-07-07 18:28:08 124

原创 《统计学习方法》啃书辅助:第14章 聚类方法

14.1.1 相似度或距离计算马哈拉诺比斯距离矩阵(Python实现)import numpy as npdef mahalanobis_distance(X): """计算所有样本之间的马哈拉诺比斯距离矩阵""" n_samples = len(X[0]) # 计算协方差矩阵 S = np.cov(X) # 计算协方差矩阵的逆矩阵 S = np.linalg.inv(S) # 构造马哈拉诺比斯距离矩阵 D = np.zeros(

2021-07-07 08:29:18 148 1

原创 《统计学习方法》啃书辅助:第11章 条件随机场

11.1 概率无向图模型【补充解释】成对马尔可夫性可以概括为:概率无向图模型中,任意两个没有边连接的结点是相互独立的。【补充解释】局部马尔可夫性可以概括为:概率无向图模型中,任意两个没有边直接相连的结点是相互独立的。【补充解释】全局马尔可夫性可以概括为:概率无向图模型中,任意两个没有边直接相连的集合是相互独立的。11.2 条件随机场的定义与形式【补充解释】条件随机场的定义中,因为具有局部马尔可夫性,所以结点yvy_vyv​与所有Yw(w∼v)Y_w (w \sim v)Yw​(w∼v)以外的结点相

2021-07-06 11:47:31 128

原创 《统计学习方法》啃书辅助:第10章 隐马尔可夫模型

10.1 隐马尔可夫模型的基本概念【歧义说明】在这一章中,对bj(k)b_j(k)bj​(k)和bj(ot)b_j(o_t)bj​(ot​)的描述存在一定的歧义。bj(k)b_j(k)bj​(k)表示状态qjq_jqj​的条件下生成观测vkv_kvk​的概率;bj(ot)b_j(o_t)bj​(ot​)表示状态qjq_jqj​的条件下生成观测oto_tot​的概率。所以同样的形式bj(∗)b_j(*)bj​(∗)中,当∗*∗为kkk时,表示观测在观测的集合中的下标kkk;当∗*∗为oto_tot​时,则直

2021-07-04 16:31:58 119 1

原创 《统计学习方法》啃书辅助:第9章 EM算法及其推广

9.1.1 EM算法【补充说明】YYY和ZZZ的联合概率分布P(Y,Z∣θ)P(Y,Z|\theta)P(Y,Z∣θ),等价于P(Y∣Z,θ)P(Z∣θ)P(Y|Z,\theta) P(Z|\theta)P(Y∣Z,θ)P(Z∣θ),即在当前模型参数下,“当隐变量取得某个值时观测变量为观测值的概率”乘以“隐变量取得该值的概率”。可以简单地理解为:在当前模型参数下,当隐变量取得某个值时,观测变量得到的观测值的概率。【补充说明】条件分布P(Z∣Y,θ)P(Z|Y,\theta)P(Z∣Y,θ),即在当前模型

2021-07-01 18:40:55 132

原创 《统计学习方法》啃书辅助:第8章 提升算法

8.1.1 提升方法的基本思路PAC 学习框架假设输入空间是 X∈Rn\mathcal{X} \in R^nX∈Rn,输入 x∈Xx \in \mathcal{X}x∈X 表示实例的特征向量。例如,每个实例都是一个人,X\mathcal{X}X 表示所有实例点的集合。对于二类分类问题,有输出变量 Y={−1,+1}\mathcal{Y} = \{-1,+1\}Y={−1,+1}。概念 c:X→Yc:\mathcal{X} \rightarrow \mathcal{Y}c:X→Y 是指一个从 X\mat

2021-06-28 10:18:23 110

原创 《统计学习方法》啃书辅助:第7章 支持向量机

支持向量机的类别划分:用于解决二类分类问题的监督学习模型非概率模型线性模型&非线性模型:线性支持向量机是线性模型,核函数支持向量机是非线性模型。非参数化模型判别模型【补充说明】合页损失函数在P. 131有详细讲解。希尔伯特空间希尔伯特空间,即完备正交的线性空间。“完备”是指状态的所有可能值都被这个空间包含了。例如有理数集就是不完备的。“正交”是指各个坐标基相互垂直/正交。“线性”是指不同的量之间满足加法规则。希尔伯特空间可以是无穷维,也可以是有限维。7.1.1 线性可分支持向

2021-06-24 07:09:35 245

原创 LeetCode题解(1868):Product of Two Run-Length Encoded Arrays(Python)

题目:原题链接(中等)标签:数组、双指针解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(N)O(N)O(N)O(N)O(N)O(N)644ms (33.33%)Ans 2 (Python)Ans 3 (Python)解法一:class Solution: def findRLEArray(self, encoded1: List[List[int]], encoded2: List[List[int]]) ->

2021-06-22 08:12:26 253

原创 LeetCode题解(1057):校园自行车分配(Python)

题目:原题链接(中等)标签:贪心算法、排序解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(N2logN2)O(N^2logN^2)O(N2logN2)O(N2)O(N^2)O(N2)2120ms (6.06%)Ans 2 (Python)Ans 3 (Python)解法一:class Solution: def assignBikes(self, workers: List[List[int]], bikes: Lis

2021-06-22 08:12:20 193

原创 LeetCode题解(1183):矩阵中1的最大数量(Python)

题目:原题链接(困难)标签:排序、数学解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(L2logL2)O(L^2logL^2)O(L2logL2)O(L2)O(L^2)O(L2)60ms (57.14%)Ans 2 (Python)Ans 3 (Python)解法一:class Solution: def maximumNumberOfOnes(self, width: int, height: int, length

2021-06-22 08:12:14 1478

原创 LeetCode题解(1772):按受欢迎程度排列功能(Python)

题目:原题链接(中等)标签:排序、哈希表解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(NlogN)O(NlogN)O(NlogN)O(N)O(N)O(N)284ms (18.92%)Ans 2 (Python)Ans 3 (Python)解法一:class Solution: def sortFeatures(self, features: List[str], responses: List[str]) ->

2021-06-22 08:12:08 238

原创 LeetCode题解(1842):Next Palindrome Using Same Digits(Python)

题目:原题链接(困难)标签:贪心算法解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(N)O(N)O(N)O(N)O(N)O(N)164ms (25.00%)Ans 2 (Python)Ans 3 (Python)解法一:def next_permutation(nums): """ 将当前排列重新排列为字典序中下一个更大的排列 最大排列(例如[3,2,1])的下一个排列是最小的排列(例如[1,2,3])

2021-06-22 08:11:59 118

原创 LeetCode题解(1778):Shortest Path in a Hidden Grid(Python)

题目:原题链接(中等)标签:广度优先搜索、深度优先搜索、图解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(M×N)O(M×N)O(M×N)O(M×N)O(M×N)O(M×N)7568ms (32.26%)Ans 2 (Python)Ans 3 (Python)解法一:class Solution(object): # 方向列表 _DIRECTIONS = [(0, 1, "U"), (0, -1, "D"),

2021-06-22 08:11:53 163

原创 LeetCode题解(1788):Maximize the Beauty of the Garden(Python)

题目:原题链接(困难)标签:贪心算法、哈希表解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(N)O(N)O(N)O(N)O(N)O(N)304ms (23.08%)Ans 2 (Python)Ans 3 (Python)解法一:class Solution: def maximumBeauty(self, flowers: List[int]) -> int: count = collection

2021-06-22 08:11:14 145

原创 LeetCode题解(1730):获取食物的最短路径(Python)

题目:原题链接(中等)标签:广度优先搜索、深度优先搜索、图解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(M×N)O(M×N)O(M×N)O(M×N)O(M×N)O(M×N)276ms (9.80%)Ans 2 (Python)Ans 3 (Python)解法一:class Solution: def getFood(self, grid: List[List[str]]) -> int: m,

2021-06-22 08:11:05 184

空空如也

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除