自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 滑动窗口算法思想(附经典例题)

滑动窗口算法思想是一个高频的算法思想,其所涉及的问题也是比较广泛、比较经典的,同时难度也通常是不小的,这篇文章谨记录自己对滑动窗口算法思想的一些思考和总结,也欢迎补充、纠正错误,与诸君共勉。

2022-01-10 20:20:39 3926

原创 贪心算法小结

贪心算法最通俗易懂 幽默风趣的讲解,帮你快速入门,毫无压力!!

2021-12-29 23:06:08 260

原创 《数学之美》个人感悟

《数学之美》读完小记——“愿科学之精神在国民中得到普及,愿中国年轻的一代涌现更多的杰出专业人才。”在不求甚解的状态下几乎是蚕食了这本优秀的读物,不求甚解和蚕食是否矛盾?这个暂且搁置不谈了哈哈。但对我无论是意念上的还是技术上的冲击确实是蛮大的。现在,也不去故弄玄虚地去讲那些什么非常美丽的数学模型和概念了,仅仅单纯地谈谈自己的感受吧。数学是美的,在任何行业都是这样的。人的思维是美的,在任何领域都是这样的。正如丘奇-图灵论题和希尔伯特第十问题所描述的那样,世界有很多很多

2021-12-24 12:42:51 767

原创 经典八皇后问题(回溯算法)

​​​​​​​八皇后原题OJ链接https://onlinejudge.u-aizu.ac.jp/courses/lesson/1/ALDS1/13/ALDS1_13_A经典八皇后问题,最直接的方法就是利用条件去限制进行穷举搜索,但这样子是没有办法满足题意要求的时间效率的,这里我们用回溯算法来解决这道问题。回溯算法:所谓回溯算法,就是系统地尝试所有可能得出正确的解的状态,当发现当前状态得不到解时就中断当前搜索并且返回(以当时中断的位置为起点)上一状态继续搜索,这样的手法就叫回溯,顾名思义嘛。其实

2021-11-01 10:01:32 438 3

原创 状态压缩动态规划(接上文伏笔)

状态压缩DP的原理和细节这里不做过多的补充和介绍,重点是给大家展示完整的AC代码,通过精妙、精简的源代码实现理解的深入。(如果不清楚什么是状压dp,可以参考其他大佬的博客哦( *^-^)ρ(*╯^╰))简单说明与引入:状压dp的本质其实也是基于一种暴力枚举算法,不过是借助了bit masking 位运算和二进制0-1特点来记录存储运算,提高算法效率。注意点:通常有俩种模型:1、集合类(加权图等):e.g.TSP、Hamilton 距离、CPP(中国邮路问题)......2、连

2021-10-29 21:34:07 135

原创 动态规划(Dynamic Programming)总结

做了一部分的动态压缩的题目,来整理归纳一下。(仅仅是以初学者的视角出发,还有很多不足和欠缺的地方,也希望各路大神指正,以后遇到新的dp类问题再来补充吧(っ °Д °;)っ)动态规划主要应用于解决最优解的问题,这类问题往往具有局部最优子结构,一般的dp还由重复子问题,而且存在仅依赖于前一个或者前几个状态的状态迁移方程,利用分治与递归的算法思想,可以实现动态规划自底向上的实现结果的求解。动态规划的优点:动态规划的优点主要在于其在实现以递归为基础的算法时,避免使用函数层层递归的结构,而是跳脱出来利

2021-10-29 21:12:28 2127 2

原创 Levenshtein Distance(编辑距离)算法C++实现及应用

编辑距离的定义编辑距离(Edit Distance)最常用的定义就是Levenstein距离,是由俄国科学家Vladimir Levenshtein于1965年提出的,所以编辑距离一般又称Levenshtein距离。它主要作用是测量两个字符串的差异化程度,表示字符串a至少要经过多少个操作才能转换为字符串b,这里的操作包括三种:增加、删除、替换。举个例子:(1)增加:对于字符串a:abc 和 字符串b:abcde,显然,只需要在字符串a的末尾增加字符'd'和'e'就能变成字符串b了,所以a和b的最短

2021-10-28 18:20:41 4343 3

原创 反转单链表的四种算法实现

本节带领大家研究一个和单链表有关的问题,即如何实现单链表的反转。反转链表,又可以称为翻转或逆置链表,它们表达的是同一个意思。以图 1 所示的链表为例:图 1 未反转的链表经过反转(翻转、逆置)后,得到的新链表如图 2 所示:图 2 反转后的链表通过对比图 1 和 图 2 中的链表不难得知,所谓反转链表,就是将链表整体“反过来”,将头变成尾、尾变成头。那么,如何实现链表的反转呢?常用的实现方案有 4 种,这里分别将它们称为迭代反转法、递归反转法、就地逆置法和头插...

2021-10-28 12:22:24 216

空空如也

空空如也

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

TA关注的人

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